2012-11-28 71 views
1

要保存我的應用程序的所有設置,我使用序列化的文件,在本教程中描述: http://www.codeproject.com/Articles/1789/Object-Serialization-using-C序列化.NET對象

所以我創建了一個叫做鍵盤

[Serializable()] 
class Keyboard : ISerializable 
{ 
    private DeviceInf _infoKbd; 
    private Screen _displayAttached; 
} 

類時我開始我的程序,在序列化過程中崩潰,並說屏幕不可序列化。所以我的問題是:如何序列化在開始時不可序列化的.NET?

+0

Screen和DeviceInf是否也被標記爲[Serializable()]? –

+0

繼承Screen類並使您的繼承類「Serializable」? (如果你使用的是Windows.System.Forms屏幕類,那就是)。如果是你的,只需將其標記爲可序列化即可。 –

+1

要序列化鍵盤,所有屬性必須是可序列化的。您的異常指出Screen類不是可序列化的。 – kerrubin

回答

0

我懷疑你必須讓DeviceInfo和Screen也是可序列化的。

+0

與Valtasarlll相同的答案 – Louisbob