光腳丫學LINQ 026 如何使實體可序列化

2021-08-25 10:06:44 字數 602 閱讀 6891

光腳重點總結

要想使物件模型中的實體類物件可被序列化,就應該在實體類的定義中使用datacontractattribute屬性修飾,以及在實體類的列成員中使用datamemberattribute屬性修飾就可以了。比如下面的**:

[table(name="dbo.customers")] [datacontract()] public partial class customers set } }

上面的這個實體類物件就可以被序列化。

要向對實體類做這樣的修改,除了使用手動的方式以外,還可以借助sqlmetal和物件關係設計器這樣工具。

可以使用如下的sqlmetal命令來建立可被序列化的實體類。

sqlmetal /code:"c:/northwind.cs" /language:csharp "c:/linq/northwind.mdf" /serialization:unidirectional

上面這個命令決定實體類物件是否可序列化的引數是 /serialization:unidirectional。

至於物件關係設計器,則可以設定【序列化模式】設定為單向來實現這點。

光腳丫學LINQ 006 投影

select 子句生成查詢結果並指定每個返回的元素的 形狀 或型別。例如,您可以指定結果包含的是整個 customer 物件 僅乙個成員 成員的子集,還是某個基於計算或新物件建立的完全不同的結果型別。當 select 子句生成除源元素副本以外的內容時,該操作稱為 投影 使用投影轉換資料是 linq ...

光腳丫學LINQ 002 篩選資料

也許最常用的查詢操作是應用布林表示式形式的篩選器。此篩選器使查詢只返回那些表示式結果為 true 的元素。使用 where 子句生成結果。實際上,篩選器指定從源序列中排除哪些元素。在下面的示例中,只返回那些位址位於倫敦的 customers。northwinddatacontext db new n...

光腳丫學LINQ 004 分組資料

使用 group 子句,您可以按指定的鍵分組結果。例如,您可以指定結果應按 city 分組,以便位於倫敦或巴黎的所有客戶位於各自組中。在本例中,customer.city是鍵。在使用 group 子句結束查詢時,結果採用列表的列表形式。列表中的每個元素是乙個具有 key 成員及根據該鍵分組的元素列表...