【问题标题】:Change values in xml, Xamarin ios C#更改xml中的值,Xamarin ios C#
【发布时间】:2015-12-29 12:56:18
【问题描述】:

我想更改 xml 中的值,但它没有改变

我的代码:

var doc = new XmlDocument();
        var documentsPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
        var filePath = Path.Combine(documentsPath, "myFile.xml");
        doc.Load (filePath);
        Console.WriteLine ("Zagruzilsa");
        Console.WriteLine (doc.OuterXml);

    send_zakaz.TouchUpInside += (o,s) => {

            using (var client = new WebClient ()) {

            street = ulitsa.Text;
            kvart = kvartira.Text;
            house = dom.Text;
            FIO = fio.Text;
            code = kod.Text;
            telephone = tel.Text;
            comment = coment.Text;

            var values = new NameValueCollection ();

            values ["Order"] = doc.OuterXml;
            values ["Order"] = values ["Order"].Replace ("{StreetName}", street.ToString()); 
            values ["Order"] = values ["Order"].Replace ("{FlatName}", kvart);
            values ["Order"] = values ["Order"].Replace ("{HouseName}", house);
            values ["Order"] = values ["Order"].Replace ("{FIO}", FIO);
            values ["Order"] = values ["Order"].Replace ("{Code}", code);
            values ["Order"] = values ["Order"].Replace ("{Phone}", telephone);
            values ["Order"] = values ["Order"].Replace ("..", comment);
            Console.WriteLine("Proverka "+street);
            Console.WriteLine(doc.OuterXml);


            values ["OrderText"] = "hello";

我在活动开始时有相同的 xml。 我的代码有什么问题? 感谢您的帮助。

【问题讨论】:

    标签: c# ios xml xamarin xamarin.ios


    【解决方案1】:

    您正在尝试更新 doc.OuterXml? Xml 文档似乎是您正在使用的模板,所以我猜它需要保留原始占位符,例如 {StreetName},然后是基于该模板生成的另一个 xml 文档,甚至只是一个 xml 字符串.

    编写的代码并未修改 XmlDocument 文档。该代码将 xml 字符串复制到值 NameValueCollection 中,然后更新该 xml 副本而不是原始 XmlDocument。

    我假设您可以只使用从 values["Order"] 返回的字符串。我猜它不需要再次加载到 XmlDocument 中,甚至不需要加载到 XmlDocument doc 变量中,如果您打算将它与 WebClient 一起使用并使用它调用 API。

    【讨论】:

    • 我在 Xamarin (C#) 上的 Android 项目中编写了这段代码,它运行良好
    • 我尝试加载 doc.OuterXml,替换一些值并发送这个 xml
    猜你喜欢
    • 1970-01-01
    • 2016-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多