2014-10-01 36 views
-1

我真的很難得到這個工作。我可以使用PowerShell更新應用程序設置,但有一行我需要在目標節點中修改。下面是我的XML如何使用PowerShell更改app.config文件中的nlog值

<startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1" /> 
</startup> 
<entityFramework> 
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, 
EntityFramework" /> 
<providers> 
    <provider invariantName="System.Data.SqlClient" 
    type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
</providers> 
    </entityFramework> 
    <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"  
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="true"> 
    <targets> 
    <target name="f1" xsi:type="File" fileName="test.log.txt" layout="${threadname} 
    ${longdate} ${callsite} ${logger}[${level}] ${message}" /> 
    <target name="console" xsi:type="Console" layout="${threadname} ${longdate} ${callsite} 
    ${logger}[${level}] ${message}" /> 
    </targets> 
    <rules> 
    <!--<logger name="Quartz.*" level="Warn" />--> 
    <logger name="*" writeTo="f1" minlevel="Info" /> 
    <logger name="*" writeTo="console" minlevel="Debug" /> 
    </rules> 
    </nlog> 

的目標節點中的一部分,它說test.log.txt我只是想有一個像「C本文件路徑:\項目\日誌\ test.log.txt 「

這是我用於應用程序設置,它的工作

$webConfig = 'C:\Projects\app.exe.config' 
$webConfigXml = [xml](gc $webConfig 

$appSetting = $webConfigXml.configuration.appSettings.add | where {$_.Key -eq 'userName'} 
$appSetting.value = 'testUser' 

與很多掙扎這一

+0

我試圖改變這個應用程序設置,它的工作$ appSetting = $ webConfigXml.configuration.appSettings.add |其中{$ _。Key -eq'user.name'} $ appSetting.value ='testeUser' – srk786 2014-10-01 11:19:33

+0

但我嘗試更改的值不在應用設置下 – srk786 2014-10-01 11:20:06

+0

我剛更新了應用設置的問題爲我工作 – srk786 2014-10-01 11:23:01

回答

1

你可以做到以下幾點:

$xml = [xml](gc $webConfig) 
$t = $xml.getElementsByTagName("targets") 
$t.target | % { if ($_.fileName -eq 'test.log.txt') {$_.setAttribute('fileName','c:\project\logs\test.log.txt')} } 
$xml.outerXml | Out-File $webConfig 

選擇所需節點的方式稍有不同,但應該按照需要進行。

相關問題