我正在使用 Microsoft Visual Web Developer 2005 (Express Edition) 编写一个简单的 Web 服务,动态生成的 WSDL 的所有参数都有一个 minOccurs="0"。
如何在不诉诸于创建静态 WSDL 文件的情况下获得所需参数的 minOccurs="1"?
我需要使用 ASP.NET Web 服务(.NET v2) 来执行此操作。所以,没有WCF。
我正在使用 Microsoft Visual Web Developer 2005 (Express Edition) 编写一个简单的 Web 服务,动态生成的 WSDL 的所有参数都有一个 minOccurs="0"。
如何在不诉诸于创建静态 WSDL 文件的情况下获得所需参数的 minOccurs="1"?
我需要使用 ASP.NET Web 服务(.NET v2) 来执行此操作。所以,没有WCF。
我认为该XmlElement(IsNullable = true)
属性将完成这项工作:
using System.Xml.Serialization;
[WebMethod]
public string MyService([XmlElement(IsNullable = true)] string arg)
{
return "1";
}
来自 msdn 论坛“如果您正在创建新的 Web 服务,我强烈建议您使用 Windows Communication Foundation (WCF) 而不是使用 ASP.NET Web 服务来构建 Web 服务。在 WCF 中,当您为您的服务指定数据协定时您可以使用 DataMemberAttribute 上的 IsRequired 属性指定给定数据成员是必需的。"