草庐IT

c# - Entity Framework 中 DBContext、DBSet<> 的引用

我正在尝试使用最新EntityFramework4.0的ADO.NetCodefirst功能。作为其中的一部分,我安装了EntityFrameworkCTP4来自微软并使用Scott'stutorial首先创建模型。教程里面DBContext和DBSet被指定。有人能告诉我为了访问这个类要使用什么引用吗。我使用了以下引用资料,但是DBContext没有任何反应和DBSet系统.数据.实体系统.数据.实体.设计 最佳答案 如果有库包管理器,您可以使用它(它会自动随MVC3.0安装)。在VisualStudio2010的项目中,转到To

c# - 带有 DbSet 的 LINQ ToListAsync 表达式

我编写了一个C#MVC5Internet应用程序,并且对使用.ToListAsyncLINQ表达式有疑问。这是我在索引操作结果中运行的代码:IEnumerablemapLocationImageGalleries=awaitdb.mapLocationImageGalleries.Where(m=>m.userName.Equals(userName)).ToListAsync();IEnumerablemapLocationVideoGalleries=awaitdb.mapLocationVideoGalleries.Where(m=>m.userName.Equals(userN

c# - 无法将类型 'System.Linq.IQueryable' 隐式转换为 'System.Data.Entity.DbSet'

我是Linq的新手,所以我遇到了以下这些情况。编译期间出现以下错误,显示Cannotimplicitlyconverttype'System.Linq.IQueryable'to'System.Data.Entity.DbSet'。varquery=_db.Products;if(bool){query=query.Where(p=>p.Id==id);}所以我尝试将var更改为IQueryable并且它起作用了。IQueryablequery=_db.Products;if(bool){query=query.Where(p=>p.Id==id);}但后来,我尝试再次更改它(见下文)

c# - 在 Entity Framework 中动态创建 DbSet<T>?

在LINQtoSQL中,我可以使用DataContext.GetTable动态创建存储库.除了在特定DbContext上声明属性之外,在EntityFramework4中是否有类似的方法来执行此操作??例如:publicMyDbContext:DbContext{publicDbSetMySets{get;set;}}我想知道如何创建/获取对MySets的引用尽可能动态地使用LINQtoSQL,如下所示:varmySet=MyDbContext.GetTable(); 最佳答案 DbContext有这样的方法:varset=cont

c# - 无效操作异常 : Cannot create a DbSet for 'Role' because this type is not included in the model for the context

以下解决方案适用于.netcore1.1,但从1.1升级到2.0后,我收到以下错误:InvalidOperationException:CannotcreateaDbSetfor'Role'becausethistypeisnotincludedinthemodelforthecontext.当用户尝试登录并执行以下语句时:varresult=await_signInManager.PasswordSignInAsync(model.Email,model.Password,model.RememberMe,lockoutOnFailure:false);怎么了?User.cspubl

c# - 当我有一个实体时,动态地在 DbContext 中查找指定的通用 DbSet

我有以下类和DbContext:publicclassOrder:BaseEntity{publicNumber{get;set;}}publicclassProduct:BaseEntity;{publicName{get;set;}}publicclassContext:DbContext{....publicDbSetOrders{set;get;}publicDbSetProducts{set;get;}....}我也有一个要添加到我的上下文中的对象列表,但我不知道如何根据每个实体类型动态地找到合适的通用DbSet。IListlist=newList();Ordero1=new

c# - 何时使用 DbSet<T>.Add() 与 DbSet<T>.Attach()

我一直在使用Add()并遇到一个问题,即当Add一个子实体时,父实体在数据库中被复制。使用Attach()解决了这个问题,但我想知道为什么而不是盲目地摸索。 最佳答案 好吧,当您使用Attach时,您告诉上下文该实体已经在数据库中,SaveChanges将不会影响附加的实体。另一方面,Add将上下文中实体的状态(如果它已经存在)更改为Added,这意味着它将始终调用SaveChanges时将实体插入数据库。这就是区别。 关于c#-何时使用DbSet.Add()与DbSet.Attach(

c# - 重新加载实体和所有导航属性关联 - DbSet Entity Framework

实体关联刷新有问题。当我得到这样的实体时:MyContextcontext=newMyContext();PersonmyPerson=context.PersonSet.FirstOrDefault();StringmyPersonName=myPerson.Name;AddressmyPersonAddress=myPerson.Address;我找到了一个人,他有一个名为Address的关联和一个名为Name的属性。如果我手动修改数据库中的数据,例如属性名称,我必须使用以下代码重新加载我的实体:context.Entry(myPerson).Reload();并且我有Name的新

c# - 如何加速 DbSet.Add()?

我必须将大约30k行从CSV文件导入到我的SQL数据库中,很遗憾,这需要20分钟。使用探查器进行故障排除显示DbSet.Add花费的时间最多,但为什么呢?我有这些EntityFramework代码优先类:publicclassArticle{//About20properties,eachpropertydoesn'tstoreexcessiveamountsofdata}publicclassDatabase:DbContext{publicDbSetArticles{get;set;}}对于for循环中的每个项目,我都这样做:db.Articles.Add(article);我在f

c# - NSubstitute DbSet/IQueryable<T>

所以EntityFramework6比以前的版本更容易测试。还有someniceexamples在互联网上寻找像Moq这样的框架,但情况是,我更喜欢使用NSubstitute。我已经将“非查询”示例翻译为使用NSubstitute,但我无法理解“查询测试”。最小起订量如何items.As>().Setup(m=>m.Provider).Returns(data.Provider);翻译成NSubstitute?我想像((IQueryable)items).Provider.Returns(data.Provider);但这没有用。我也试过items.AsQueryable().Prov