我在一个服务方法中遇到了这样的情况:将一个POCO作为另一个POCO的子对象赋值时,结果与预期不符。我正在使用Entity Framework 4。
public void ChangeOrderCurrency(Currency currency)
{
order.CurrencyId = currency.Id;
order.Currency = currency;
// other stuff related to exchange rates etc
}
设置关系,使用哪个更正确?order.CurrencyId = currency.Id
还是order.Currency = currency
?
在这段通过所有单元测试的代码中,偶尔会出现order.Currency = currency
会将order.CurrencyId和order.Currency都设置为NULL的情况。