繁体   English   中英

为什么实体框架结果是引用类型?

[英]Why entity framework results are reference type?

我正在使用C#实体框架6,出现问题。 运行查询并更改项目值后,其他项目也会自动更改。

请看截图。 为什么 items[0].C.Tag 是“红色”? 我该如何解决这个问题? 在此处输入图像描述

This is because items[0].C and items[1].C points to the same object.items[0].C and items[1].C is the object for first row of city table. 这两个 Persons 表条目具有相同的 cityID,因此它们显然指向具有 Id 1 的同一个城市。EF 为每个 Id(主键)创建一个 object。

7 天后,我添加了 AsNoTracking(),一切正常。 所以对象不一样

var items = (from P in db.tbl_Persons
             join C in db.tbl_Cities on P.CityID equals C.ID
             select new { P, C }).AsNoTracking().ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM