[英]Removing the Type and namespaces from Serialized XML
对于我正在使用的代码,我有类似的东西:
FileStream logStream = new FileStream(@"C:\mytest\mytest.xml", FileMode.Open);
XmlSerializer xmlSerializer = new XmlSerializer(myProvider.GetType());
xmlSerializer.Serialize(logStream, MyProvider);
这将生成如下所示的XML
:
<ProviderType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ....
但是在Fiddler
,看到了SOAP中的XML,我看到了:
<Provider .......
因此它不是Provider ** Type **,并且没有那些名称空间 ...
我应该如何改进代码以生成这样的XML?
public ProviderType Provider
{
get
{
return this.providerField;
}
set
{
this.providerField = value;
}
}
如果要让ProviderType
类的实例序列化为<Provider>
,则必须这样说:
[XmlRoot(Name="Provider")]
public class ProviderType
{
}
您看到的额外名称空间与任何符合标准的XML实现无关。 在确定名称空间是问题之前,请获取所有其他内容以匹配所需的XML。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.