【发布时间】:2010-09-23 02:42:54
【问题描述】:
VS.net 在您创建 WCF 项目时创建一个模板。
它将一个类添加到 iService1.cs 文件中:
// Use a data contract as illustrated in the sample below to
// add composite types to service operations.
[DataContract]
public class CompositeType
{
bool boolValue = true;
string stringValue = "Hello ";
[DataMember]
public bool BoolValue
{
get { return boolValue; }
set { boolValue = value; }
}
[DataMember]
public string StringValue
{
get { return stringValue; }
set { stringValue = value; }
}
}
既然 WCF 服务可以返回任何用户定义的类,为什么要使用 DataContract 和 CompositeType 类?
我可以返回类似的东西:
[OperationContract]
MyUserCollection GetUsers();
我错过了什么?
【问题讨论】:
-
如果您在电线的两端都有 .NET,那很好。如果您有一个 Java 客户端调用您的服务怎么办?如果将数据放在 DataContracts 中,则该信息将存储在 WSDL/XSD 元数据中,并且也可以由 .NET 以外的客户端使用。
-
我发现 marc_s 的评论是最有用和最直接的,但在阅读其他答案时,我发现 WolveFred 的评论让我感到困惑。所以请你澄清一下。赞成,因为它仍然是最直接的答案。
标签: wcf