【发布时间】:2013-03-22 05:30:06
【问题描述】:
我正在尝试使用 C# 在 ASP.NET 中实现一个 SOAP 服务,以便我可以使用 Flex 来使用它 - 但这是下一步。我遇到的问题是我正在尝试与在 [Serializable] 类中具有 XmlNamespaceManager 字段的服务器端类进行通信:
[Serializable]
public class Site {
...
public XmlNamespaceManager xmlNS;
...
}
我已尝试将[NonSerialized] 挂钩附加到有问题的字段,但我的 SOAP 服务似乎没有遵守我的指示。这是服务:
public class DotNetWikiService : WebService
{
[WebMethod]
public Article doWork(Site ws, String title)
{
Page thePage = new Page(ws, title);
thePage.Load();
if (thePage.Exists() == false)
{
return new Article(title, "Wiki page contents are empty.");
}
return new Article(title, thePage.text);
}
}
这是我尝试运行 .asmx 文件时遇到的错误:
要成为 XML 可序列化的,从 IEnumerable 继承的类型必须具有 Add(System.Object) 在其继承的所有级别上的实现 等级制度。 System.Xml.XmlNamespaceManager 没有实现 Add(System.Object)。
现在,我知道XmlNamespaceManagers 是不可序列化的,所以我试图指出这一点,但是出了点问题,我不知道该怎么办。
请帮忙? :D
【问题讨论】:
-
此外,我也尝试过制作自己的
XmlNamespaceManager,它继承了原版并实现了Add,但当然,原版仍然没有实现Add。跨度>
标签: c# asp.net serialization soap