2013-03-25 89 views
2

我嘗試設置一個元素的值,它在我的XML中不是空的,它可以工作,但是如果它是空的,則不起作用。powershell set xml value #text

我的XML:

... 
<Field IDREF="934d80f1" Name="FirstName">works</Field> 
<Field IDREF="936845ba" Name="LastName"></Field> 
... 

,如果我寫的內容與

$record.BusinessObject.FieldList.Field | Where-Object { $_.Name -eq $field } 

返回

IDREF   Name      #text          
-----   ----      ----- 
934d80f1  FirstName     works 

,第二行的 「虛擬」 屬性#text中丟失

IDREF   Name           
-----   ----  
936845ba  LastName 

與PowerShell代碼

record.BusinessObject.FieldList.Field | Where-Object { $_.Name -eq $field } | ForEach-Object { $_.'#text' = $state } 

我想設置的值>所選元素的VALUE <,它的工作原理,如果不爲空值...

任何人任何想法?

回答

4

嘗試使用$_.InnerXml屬性,並且它將在必填字段上設置值。

$record.BusinessObject.FieldList.Field | Where-Object { 
    $_.Name -eq $field 
} | ForEach-Object { 
    $_.InnerXml = $state 
} 
+0

謝謝!而已! – Dominik 2013-03-25 09:13:47

+0

不客氣 – 2013-03-25 09:17:32