Generalmente non è una buona idea provare ad accedere ai file di configurazione da altri assiemi/progetti, poiché in genere non vengono inviati alla stessa directory quando compilati.
Poiché TypeScript è transpiled in JavaScript, non è possibile leggere direttamente da un file di configurazione, indipendentemente da dove si trova.
Se si desidera cambiare dinamicamente gli URL per un servizio (ad esempio da un endpoint DEV ad un QA o di produzione finale), è possibile utilizzare Razor Sintassi nel file HTML/CSHTML per afferrare il valore dal file di configurazione e quindi immettere il valore negli script, O è possibile utilizzare PowerShell durante la distribuzione per sostituire i valori nei file TypeScript durante il processo di generazione.
# Argument passed into PowerShell script (or write out URL string manually).
$NewURL1 = $args[0];
$NewURL2 = "http://goodURL.com/api";
# *.js files, because your *.ts files will already be transpiled.
$files = gci "C:\MyProject\DropFolder" -recurse -include "exampleWithBadURL.js", "otherFile.js";
Foreach ($file in $files)
{
$fileContent = Get-Content($file) -Raw;
attrib $file -r;
# Perform the replacement.
$fileContent -replace "http://localhost:38774/", $NewURL1 | Out-File $file;
$fileContent -replace "http://badURL.com/api/", $NewURL2 | Out-File $file;
Write-Output($file.FullName);
}
Se l'agente di generazione/rilascio lo consente, è possibile eseguire questo script PowerShell quando si distribuisce il codice in un ambiente specifico. Uso uno script simile in VSTS/TFS nella definizione di versione dopo il. Copio i file.
fonte
2017-02-03 01:39:32