2012-07-19 26 views
6

我運行了sgen針對我的裝配,每公噸類型。我想從序列化中排除2種類型。我似乎無法找到辦法做到這一點。如何從序列化中排除特定類型?

我看到sgen有一個/type開關來指定一個特定的類型,但沒有排除一個特定的類型。

有沒有辦法從序列化中排除特定類型?

+0

也許我不明白你的問題,但'sgen'只生成序列化程序集。那裏有另外兩門課是什麼問題? – 2013-02-03 22:41:16

回答

-3

不知道你是否在尋找這個,但是你可以通過在類定義之前提及[NonSerialized]來從序列化中排除你自己的類。 所以,如果你想排除特定的類型,你將不得不從它繼承和創建自己的類

[NonSerialized] 
public class Point 
{ 
    public int x, y; 
} 
+2

這段代碼不應該編譯,因爲'NonSerialized'屬性的唯一目標是字段。 – tm1 2013-04-15 07:14:18

+1

錯誤屬性'NonSerialized'在此聲明類型上無效。它只對'field'聲明有效。 – 2014-09-25 04:52:22

1

除了將要在不同的裝配,以排除類型,你不能從串行排除類型代。

0

您可以嘗試通過將該類標記爲internal來更改要從Xml序列化中排除的類的訪問權限,則sgen.exe應跳過該類。

internal class NotToBeSerialized 
{ 
    ... 
} 
相關問題