WCF 中的序列化
序列化是将对象转换为字节流以便存储对象或将其传输到内存,数据库或文件的过程。 Microsoft 页面序列化
以下示例演示了 WCF 中的序列化:
[ServiceContract(Namespace="http://Microsoft.ServiceModel.Samples")]
public interface IPerson
{
[OperationContract]
void Add(Person person);
[DataContract]
public class Person
{
private int id;
[DataMember]
public int Age{ set; get;}
}
}
-
[DataContract]
属性与类一起使用。这里装饰有Person
级。 -
[OperationContract]
用于方法。这里用Add
方法装饰。 -
[DataMember]
属性与属性一起使用。那些用[DataMember]
属性装饰的人只有那些可供代理人访问的属性。在这里,我们有 2 个属性,id
无法访问,Age
可访问。 -
[DataMember]
当你不想向外界显示私有字段并且只想显示公共属性时,属性很方便。 -
使用
[DataMember]
属性,你可以使用某些属性。它们如下
DataMember 的属性
一个。IsRequired
可以像这样使用 [DataMember(IsRequired=true)]
湾 Name
可以像这样使用 [DataMember(Name=
RegistrationNo)]
C。order
可以像这样使用 [DataMember(order=1)]
如果不指定属性,我们将无法访问我们使用的项目中的类/方法/属性(这个例子是 wcf 服务接口)。
这些属性使代码在运行时通过单个项目可访问的方式称为序列化。
- 使用 WCF,你可以使用序列化与其他项目,应用程序或任何其他软件进行通信,而无需完成设置端点,手动创建流和维护流的所有工作。更不用说将所有数据转换为字节,反之亦然。