如何从c#获取xml数据并使用jquery在html中显示为列表
我正在用c#从web api控制器获取xml数据。我需要在html视图页面中以列表的形式显示这些数据。我试过各种方法,但都不管用。 下面是我从api获得的XML数据。建议一种方法如何做到这一点。 提前谢谢如何从c#获取xml数据并使用jquery在html中显示为列表,c#,jquery,ajax,xml,asp.net-web-api,C#,Jquery,Ajax,Xml,Asp.net Web Api,我正在用c#从web api控制器获取xml数据。我需要在html视图页面中以列表的形式显示这些数据。我试过各种方法,但都不管用。 下面是我从api获得的XML数据。建议一种方法如何做到这一点。 提前谢谢 <ArrayOfIDValue xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IFlicksAPI.Controllers">
<ArrayOfIDValue xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IFlicksAPI.Controllers">
<IDValue>
<ID>1</ID>
<Name>Shuba</Name>
</IDValue>
<IDValue>
<ID>2</ID>
<Name>Raji</Name>
</IDValue>
<IDValue>
<ID>3</ID>
<Name>Renu</Name>
</IDValue>
</ArrayOfIDValue>
1.
舒巴
2.
拉吉
3.
雷努
您可以使用xml.serialization创建一个类,并将xml数据序列化到该类的对象中,
然后,只需填写清单,因为它必须这样做
示例:xml模板类
使用System.Xml.Serialization
namespace App
{
[XmlRoot("GuiConfig")]
public class ConfigParameters
{
[XmlElement("field1")]
public string field1;
[XmlElement("field2")]
public string field2;
}
如何序列化
public static void GetXmlData()
{
config = new ConfigParameters(); //global scope var
try
{
if (File.Exists("C:/path/config.xml"))
{
String xmlDoc = XDocument.Load("C:/path/config.xml").ToString();
XmlSerializer serializer = new
XmlSerializer(typeof(ConfigParameters));
using (TextReader reader = new StringReader(xmlDoc))
{
mainForm.config =
(ConfigParameters)serializer.Deserialize(reader);
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
throw;
}
}
通过这种方式,您可以解析xml并遍历所有项
success: function(xml) {
$(xml).find('IDValue').each(function(){
var id = $(this).find("ID").text();
var name = $(this).find("name").text();
$("#list").append("<option value='" + id + "'>" + name + "</option>")
});
}
success:函数(xml){
$(xml).find('IDValue').each(function(){
var id=$(this.find(“id”).text();
var name=$(this.find(“name”).text();
$(“#列表”)。追加(“+name+”)
});
}
当然,您需要在web api url中使用jQueryAjax函数