假设我有一个可序列化的类,例如
[Serializable]
public class DatabaseViewModel:MVVM.ObservableObject
{
//fields
//properties
public DatabaseViewModel()
{
//if a serialization file exists then deseralize and make this instance equal to it
//else initialize fields
}
}
是否可以从类内部而不是调用范围内做这样的事情?
在调用范围内我会做
var dbvm = new DatabaseViewModel();
然后我希望构造函数决定它是应该创建一个新对象还是加载一个序列化对象。
在我的课堂上我试过这个
this = //my serialized object
如果我想从调用范围内做到这一点,我会这样做
DatabaseViewModel dbvm = null;
if(File.Exists(".../DatabaseViewModel.bin")
dbvm = //deserialize .../DatabaseViewModel.bin
else
dbvm = new DatabaseViewModel();