C# 实体框架ListObject
我得到了一个简单的函数,它返回DatabaseViewName的列表C# 实体框架ListObject,c#,entity-framework,list,C#,Entity Framework,List,我得到了一个简单的函数,它返回DatabaseViewName的列表 public List<DatabaseViewName> GetAllItems(string article) { List<DatabaseViewName> visi; var cus = from s in _entities.DatabaseViewName where s.articleNr == article select s;
public List<DatabaseViewName> GetAllItems(string article)
{
List<DatabaseViewName> visi;
var cus = from s in _entities.DatabaseViewName where
s.articleNr == article select s;
visi = new List<DatabaseViewName>(cus);
return visi;
}
在ese中,该值没有更改。我可以用100篇不同的文章运行100次。
第一次运行的值将被保存。明白了!
您可以将查询设置为无跟踪
var ese = (from s in _entities.DataBbseViewName where
s.ArticleNr == article select s).ToArray().AsNoTracking();
Seeya两篇不同文章的数据库中有多少条记录?第二次运行时,您在cus中得到了多少项?您是否也可以第二次查看visi的第一个实例?你不需要改变列表-你只需要返回它-顺便说一句:不要返回列表-在cus中一次返回数组或新的只读列表等不可变的东西,不,我不看第一个实例。你用来调用GetAllItemsstring文章方法的代码是什么样的?
var ese = (from s in _entities.DataBbseViewName where
s.ArticleNr == article select s).ToArray().AsNoTracking();