我想將對象序列化爲xml。我已經安裝了更改方法在運行時的屬性
public class Foo<t>
{
[XmlElement(ElementName ="test")]
public <t> bar {
get
{
var descriptor = TypeDescriptor.GetProperties(this.GetType())["bar"];
var attrib =(XmlElementAttribute)descriptor.Attributes[typeof(XmlElementAttribute)];
FieldInfo ElementName = attrib.GetType().GetProperty("ElementName")
ElementName.SetValue(attrib, "success");
}
set{}
}
我想在運行時更改XmlElement.ElementName但至今一直unsucessfull。 根據this blog你應該可以做到這一點。另外這SO post表明我在正確的軌道上。
我的問題是是我想做的可能嗎?我如何實現這一目標?
編輯: 我想要的XML節點被調用,而不是「測試」
'ElementName'可能是一個屬性,而不是字段,所以請改用'GetProperty(「ElementName」)'。 – vcsjones
你是正確的GetProperty導致非null。但在序列化我收到「測試」,而不是「成功」 – gh9
請更新與新的錯誤的問題。 – rae1