我正在服务器上使用 DTO(数据传输对象)。
我试图实现的场景,我的 PersonDTO 对象上有一个地址列表,如果我删除或添加新项目到地址列表,我想在服务器上执行一些额外的实现。因此,为此我正在使用 [RoundTripOriginial],正如 MSDN 中所说,它会将原始对象与更新的对象一起返回给服务器。
注意:我不想进行数据库调用来获取原始实体。
这是我的示例结构,
[RoundtripOriginal]
Public Class PersonDTO
{
[Include]
[Composition]
[Association("PersonDTO_AddressDTO", "Id", "ReferenceId")]
public List<Address> Addresses
{ get
{
if (addressed== null)
addressed= new List<Address>();
return addressed;
}
set { addressed= value; }
}
}
在域服务上
[Update]
public void UpdatePersonDTO(PersonDTO person)
{
PersonDTO originalPerson = this.ChangeSet.GetOriginal(person);
}
但是,GetOriginal 返回我'null',
我在这里错过了什么吗?
非常感谢任何形式的建议/帮助。提前致谢。