我的代码
partial class User
{
[OnSerializing]
public void ClearPassword()
{
Password = null;
}
}
Linq 到 SQL
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.[User]")]
[global::System.Runtime.Serialization.DataContractAttribute()]
public partial class User : INotifyPropertyChanging, INotifyPropertyChanged
{
[global::System.Runtime.Serialization.OnSerializingAttribute()]
[global::System.ComponentModel.EditorBrowsableAttribute(EditorBrowsableState.Never)]
public void OnSerializing(StreamingContext context)
{
this.serializing = true;
}
}
结果
无效的属性。“AuthenticationManager.User”类型中的“Void ClearPassword()”和“Void OnSerializing(System.Runtime.Serialization.StreamingContext)”都有“System.Runtime.Serialization.OnSerializingAttribute”。
现在,微软的工程师们是否创造了一种方法,让两个独立的代码块在序列化时独立触发一些事件?特别是考虑到他们劫持了这个事件来设置的事实this.serializing = true
?
提前致谢。