gpt4 book ai didi

c# - 如何在c#中序列化对象时设置xmlns

转载 作者:数据小太阳 更新时间:2023-10-29 01:43:02 26 4
gpt4 key购买 nike

我正在将我的 ASP.net MVC 程序中的对象序列化为这样的 xml 字符串;

StringWriter sw = new StringWriter();
XmlSerializer s = new XmlSerializer(typeof(mytype));
s.Serialize(sw, myData);

现在给我这个作为前两行;

<?xml version="1.0" encoding="utf-16"?>
<GetCustomerName xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

我的问题是,序列化时如何更改 xmlns 和编码类型?

谢谢

最佳答案

我发现将这一行添加到我的类中是可行的,

[System.Xml.Serialization.XmlRootAttribute(Namespace = "http://myurl.com/api/v1.0", IsNullable = true)]

并将其添加到我的代码中以在我调用序列化时添加命名空间

    XmlSerializerNamespaces ns1 = new XmlSerializerNamespaces();
ns1.Add("", "http://myurl.com/api/v1.0");
xs.Serialize(xmlTextWriter, FormData, ns1);

只要两个命名空间匹配,它就可以正常工作。

关于c# - 如何在c#中序列化对象时设置xmlns,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2567370/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com