草庐IT

Entity-Framework

全部标签

c# - 包含关键字的 Linq 不同记录

我需要根据汽车关键字搜索返回不同的记录列表,例如:“Alfa147”问题是,因为我有3辆“Alfa”汽车,它返回1+3条记录(Alfa和147结果似乎是1,Alfa结果似乎是3)编辑:SQL-Server查询看起来像这样:SELECTDISTINCTc.Id,c.Name/*,COUNT(NumberofAdsintheKeywordAdCategoriestablewiththose2keywords)*/FROMCategoriesAScINNERJOINKeywordAdCategoriesASkacONkac.Category_Id=c.IdINNERJOINKeywordAd

c# - 数据读取器与指定的 Entity Framework 不兼容

我有一个方法可以从存储过程返回最小结果来填充选择菜单。当我想要最小结果时,我将boolgetMin=true传递给存储过程,而当我想要完整记录时,我传递boolgetMin=false。这导致EntityFramework错误“数据读取器与指定的不兼容”错误中最相关的部分{"Message":"Anerrorhasoccurred.","ExceptionMessage":"Thedatareaderisincompatiblewiththespecified'CatalogModel.proc_GetFramingSystems_Result'.Amemberofthetype,'F

c# - 使用 Entity Framework Fluent Api 映射 System.Uri

很简单的问题。我有一个模型,它有一个System.Uri类型的属性。Uri没有默认的无参数构造函数,也没有ID字段。有没有什么方法可以覆盖我的模型生成以自定义方式将其存储在数据库中(例如,作为string)?在NHibernate中,我之前通过实现IUserType来完成此操作,但我在CodeFirst中找不到类似的机制。显然,我可以创建一个自定义类型,它在后台使用Uri并公开常规的可映射属性和构造函数,我只是想知道是否有任何方法可以映射此系统类型,以便我不必制作那样的包装器。 最佳答案 这是一个非常古老的问题,但我今天刚遇到同样的

c# - 找不到 CreateQuery() 方法

我是EntityFramework的新手。我找不到下面的方法CreateQuery()为什么我找不到这个方法?!! 最佳答案 由于ESQL被认为是高级用例,因此DbContext中没有直接的API。您可以访问支持您的DbContext的ObjectContext来执行您想要的操作:((IObjectContextAdapter)context).ObjectContext.CreateQuery("esql..")相关:http://thedatafarm.com/blog/data-access/accessing-objectc

c# - Entity Framework : The context is being used in Code First mode with code that was generated from an EDMX file

我正在使用EF6数据库优先方法开发一个WPF应用程序,我的解决方案中有一个项目,如果我运行我的项目,这个错误总是出现。上下文在代码优先模式下使用,代码是从数据库优先或模型优先开发的EDMX文件生成的。这将无法正常工作。要解决此问题,请不要删除引发此异常的代码行。如果您希望使用数据库优先或模型优先,请确保EntityFramework连接字符串包含在启动项目的app.config或web.config中。如果您要创建自己的DbConnection,请确保它是一个EntityConnection而不是其他类型的DbConnection,并且您将它传递给采用DbConnection的基本Db

c# - Entity Framework 核心 .Include() 问题

一直在尝试使用efcore并遇到include语句的问题。对于这段代码,我得到了2家公司,这是我所期望的。publicIEnumerableGetAllCompanies(HsDbContextdb){varc=db.Company;returnc;}返回[{"id":1,"companyName":"new","admins":null,"employees":null,"courses":null},{"id":2,"companyName":"TestCompany","admins":null,"employees":null,"courses":null}]如您所见,有2家公

c# - 将 DbContext 注入(inject)服务层

我应该如何将我的MyDbContext注入(inject)到我的数据库服务层MyService中?Startup.cspublicvoidConfigureServices(IServiceCollectionservices){services.AddDbContext(options=>options.UseSqlServer(Configuration["ConnectionStrings:DefaultConnection"]));services.AddMvc();}MyDbContext.cspublicpartialclassMyDbContext:DbContext{p

c# - 在 Entity Framework Core 2.0 中执行 SQL 命令删除表中的所有数据

我想从EntityFrameworkCore2.0执行SQL命令,但我不知道该怎么做。1.-我需要这样做的原因是我想从数据库表中删除所有数据,使用Context.remove或Context.removeRange会产生对数据库的许多调用(一个用于表中的每个数据)。2.-我读到有一种方法.ExecuteSqlCommand可以完成该操作,但是我的Context.Database中没有该方法(也许在Core2.0中它被删除了?)。这是信息的来源:DroppingtableInEntityFrameworkCoreandUWP因此,基本上我需要使用EFCore2.0从代码中删除一个表,据我

c# - Entity Framework 查询中令人难以置信的重复

我针对特定View的SQL查询返回3个不同的行。select*fromvwSummarywherevidate>='10-15-2010'andvidate但如果我通过我的EntityFramework运行相同的查询,我得到3行,但所有3行都相同,相当于第三行。firstVisibleDate=newDateTime(2010,10,15);lastVisibleDate=newDateTime(2010,10,15);varp1=(fromvindb.vwSummarywherev.viDate>=firstVisibleDate&&v.viDate谁能帮我解决这个问题。编辑:我像这

c# - 找不到类型或命名空间名称 'Column'

我确定我在这里遗漏了一些简单的东西。我正在尝试遵循CodeFirstEntityFramework教程,该教程告诉我使用一些数据注释。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.ComponentModel.DataAnnotations;namespaceModel{publicclassDestination{publicintDestinationId{get;set;}[Required]