如何从c#获取xml数据并使用jquery在html中显示为列表

如何从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">

我正在用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">
  <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函数