例如,我如何向客户端发送元信息。
我有一个web服务(GetProductById)的方法。我的实体产品有带有自定义属性的meta info。
我想要发送给我的客户元信息。现在,我如何才能做到这样或类似的事情呢?
Product GetProductById(int productId)
{
return IProductModel.GetProduct(ProductId);
}
Public Class Product
{
[Caption("Product id"]
int ProductId { get; private set; }
[Caption("Name of product")]
string Name { get; set ; }
}发布于 2011-03-20 00:19:16
如果你使用的是WCF,那么首先你需要用ServiceContract来装饰你的类,并且每个要公开的方法都需要是一个OperationContract。要公开DataMember,您的数据类必须为DataContract,并且每个成员都必须为
看看Codeplex上的WCFExtras。它有一个特性,可以在生成的WSDL中包含源代码xml注释。您所需要做的就是在项目中添加一个引用,然后将属性XmlComments添加到您的服务契约的类/接口中。
您的代码将如下所示:
[ServiceContract, XmlComments]
public class WebService
{
/// <summary>Returns the product information</summary>
[OperationContract]
Product GetProductById(int productId)
{
return IProductModel.GetProduct(ProductId);
}
}
/// <summary>Summary you want your client to see</summary>
[DataContract]
Public Class Product
{
/// <summary>Product id</summary
[DataMember(IsRequired = true)]
int ProductId { get; private set; }
/// <summary>Name of product</summary>
[DataMember(IsRequired = true)]
string Name { get; set ; }
}这将确保WSDL包含您添加的注释。还要确保在构建配置中生成Xml文档文件,并确保该文件在运行时可用。
https://stackoverflow.com/questions/4686202
复制相似问题