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,你可以使用序列化與其他專案,應用程式或任何其他軟體進行通訊,而無需完成設定端點,手動建立流和維護流的所有工作。更不用說將所有資料轉換為位元組,反之亦然。