如何将XML元素解析为XElement

时间:2013-06-12 12:53:21

标签: c# xml linq linq-to-xml

我有一个问题,我仍然无法解决。

我有来自TextBox的文字,它是这样的:

<assemblyIdentity name="MyAssemblyName" publicKeyToken="my1231key" />

我想将其作为XElement加载,因为我需要对其执行一些更改并更改其格式。我还想获取其属性值的列表。

将它分配给可以通过字符串初始化的东西是不可能的。围绕属性值的引号是问题(以及其他可能的东西)。

简单地说,我把它作为来自TextBox.Text的内容,我想将它加载到XElement,这样我就可以使用它了。

3 个答案:

答案 0 :(得分:2)

您可以使用XElement.Parse方法

 XElement rootElement = XElement.Parse(textbox1.Text);

更多信息:http://msdn.microsoft.com/en-us/library/bb538477.aspx

答案 1 :(得分:0)

你试过吗

var element = XElement.Parse(myTextBox.Text);

适合我。

或者这种方法对你有什​​么问题吗?

答案 2 :(得分:0)

// string from textbox
string xml = "<assemblyIdentity name=\"MyAssemblyName\" publicKeyToken=\"my1231key\" />";

这里是解析元素:

var assemblyIdentity = XElement.Parse(xml);     
var name = (string) assemblyIdentity.Attribute("name"); // MyAssemblyName
var token = (string) assemblyIdentity.Attribute("publicKeyToken"); // my1231key