【发布时间】:2012-02-15 07:31:13
【问题描述】:
我正在继承和修改 System.Net.MailMessage 类以用于 Web 服务。出于其他原因,我需要将其命名为 MailMessage。当我在下面的代码中使用它时,我得到下面的错误。
“类型 'System.Net.Mail.MailMessage' 和 'TestWebService.MailMessage' 都使用来自命名空间 'http://tempuri.org/' 的 XML 类型名称 'MailMessage'。使用 XML 属性为该类型指定唯一的 XML 名称和/或命名空间。"
我相信我必须添加 XMLRoot 和 Type 属性,但我似乎无法找出正确的组合。我需要做什么来解决这个错误?
namespace TestWebService
{
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public string Test(MailMessage emailMessage)
{
return "It Worked!";
}
}
}
namespace TestWebService
{
public class MailMessage : System.Net.Mail.MailMessage
{
public MailMessage() : base()
{
}
}
}
【问题讨论】:
-
尝试使用 [XmlType(Namespace="test")] 来分配您的子类。
-
顺便说一句,您是否知道 ASMX Web 服务是一项遗留技术,不应该用于新开发?
标签: c# asp.net xml web-services asmx