jjzjj

entity_seq

全部标签

c# - 字符串 EndsWith 方法中 Entity Framework Linq 中的奇怪行为

背景我有一个只包含一列的表:名称。里面只有四行,比方说|Name||test1.com||test2.com||test3.com||test4.com|问题如果我查询varemail="a@test2.com";Table.Where(x=>email.EndsWith(x.Name));我会得到一个空列表。但是如果我先查询所有行并像这样计算内存中的位置varemail="a@test2.com";Table.ToList().Where(x=>email.EndsWith(x.Name));我会得到一个仅包含正确的test2.com的列表。第一次查询生成的SQL是SELECT"Ex

c# - Entity Framework ,鉴别器列,但没有继承

我想测试一个非常简单的代码优先示例。我有一个名为PurchaseItem的类,它不是从任何基类继承的,也没有其他类从它继承。它与其他模型完全没有关联:publicclassPurchaseItem{publicintId{get;set;}publicstringBuyer{get;set;}publicstringItem{get;set;}publicintQuantity{get;set;}publicintPrice{get;set;}}这是我的数据库上下文代码。我将数据库初始化程序设置为null,因为我已经有数据库:publicclassMiniContext:DbConte

c# - View 和表之间的 Entity Framework 映射关联

我可以直观地映射1:1(一对一)表格,如下所示:但我无法理解如何在表和View之间进行相同的映射,就像这样在此图中,表示了两个实体。如果我在实体模型中手动创建一个关联,并像这样设置它的映射:然后我得到错误:Error3021:ProbleminMappingFragmentstartingatline172:Eachofthefollowingcolumnsintableview_EmployeeViewismappedtomultipleconceptualsideproperties:view_EmployeeView.EmployeeIDismappedtoEmployeesvi

c# - Entity Framework 4 Table Per Hierarchy - 如何定义子项的导航属性?

我目前有一个EntityFramework4.0模型和TablePerType(TPT),但存在一些性能问题(很多LOJ/CASE语句),以及两个特定域区域之间的问题映射(许多-对多)。我决定试用TPH。我有一个名为“Location”的实体,它是抽象的,也是所有其他实体的基础。然后我有"Country","City","State","Street",等等,它们都来自Location。“LocationType”是鉴别器。那部分工作正常,但我在尝试为派生类型定义导航属性时遇到问题。例如,“State”有一个“Country”,所以我应该可以这样做:varstate=_ctx.Loca

c# - .NET 4.0 Entity Framework 超时已过期

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。我正在使用MVC3、.NET框架4.0和EntityFramework开发一个ASP.NET网站。当我运行应用程序并对SQLServer2005数据库执行简单选择时,出现以下错误:“抛出了System.Data.SqlClient.SqlException:”超时已过。在操作完成之前超时期限已过,或者服务器没有响应。”事情就是这样。我尝试登录并从管理工作室

c# - 使用 Linq to Entity 删除多行的有效方法?

您好,我正在寻找一次删除多条记录的有效方法。我要删除400条记录,需要8-15秒。这是我的代码using(varentities=newEntity()){foreach(Itemiteminentities.Items.Where(x=>x.id==id))entities.DeleteObject(item);entities.SaveChanges();} 最佳答案 您可以使用EntityFramework.Extensions更快地完成它1)首先使用NuGet安装EntityFramework.Extensions2)下面是

c# - 使用 Mock IDbSet 对 Entity Framework 进行单元测试

我以前从未真正做过单元测试,而且我在第一次测试时跌跌撞撞。问题在于_repository.Golfers.Count();始终指示DbSet为空。我的测试很简单,我只是想添加一个新的高尔夫球手[TestClass]publicclassGolferUnitTest//:GolferTestBase{publicMockGolfEntities_repository;[TestMethod]publicvoidShouldAddNewGolferToRepository(){_repository=newMockGolfEntities();_repository.Golfers=new

c# - Entity Framework Linq 查询 : runs instantly in SSMS and 8-10s in EF LINQ 出现问题

我在SQL中得到了以下查询(混淆了变量名),它试图获取值(Ch、Wa、Bu、Hi),从而导致最大数量(cnt)的Pi条目。selecttop1Pi.Ch,Pi.Wa,Pi.Bu,Pi.Hi,COUNT(1)ascntfromProduct,Si,PiwhereProduct.Id=Si.ProductIdandSi.Id=Pi.SiIdandProduct.Code=@CodeParametergroupbyPi.Ch,Pi.Wa,Pi.Bu,Pi.Hiorderbycntdesc它在我们的生产数据库上的SQL管理工作室中立即运行。我已经在C#LINQ和EntityFramework中

c# - Entity Framework : am I supposed to modify migration classes?

我希望我了解基本的工作流程。首先我创建一个模型,然后我生成一个初始迁移,然后我从中生成一个SQL,好的。我更新了模型,我从中创建了一个新的迁移,并从中创建了一个新的SQL,好的。我假设这是一个单向的工作流程是否正确?如果我以错误的方式更改了迁移类,它将永远不会反射(reflect)在我的模型中,并且如果数据库架构不是它应该的样子,EF永远不会注意到,我只会得到奇怪的异常,对吧?如何确保在修改迁移类时不会导致不一致?我假设我只能做两件事:首先,添加EF不关心的新数据库对象,其次,以最终具有相同架构的方式更改EF生成的迁移代码(例如,如果EF生成一个dropcolumn和addcolumn

c# - LINQ 和 Entity Framework - 避免子查询

我真的很难在我的应用程序中调整我的EntityFramework生成的查询之一。这是非常基本的查询,但出于某种原因,EF使用多个内部子查询,这似乎在DB中执行得很糟糕,而不是使用连接。这是我的LINQ代码:Projects.Select(proj=>newProjectViewModel(){Name=proj.Name,Id=proj.Id,Total=proj.Subvalue.Where(subv=>subv.Created>=startDate&&subv.Createdc.SubValueSum).DefaultIfEmpty().Sum()}).OrderByDescend