草庐IT

ef-database-first

全部标签

c# - 一个 DbSet 的 EF 代码优先 PluralizingTableNameConvention

如何仅为单个表/DbSet切换此约定PluralizingTableNameConvention?据我所知,我只能对给定DbContext的所有DbSets执行此操作 最佳答案 如果只有一个实体映射到非复数形式的表,则可以删除PluralizingTableNameConvention并手动配置实体的表名称。publicclassMyContext:DbContext{protectedoverridevoidOnModelCreating(DbModelBuildermodelBuilder){base.OnModelCreati

c# - 必须使用 dbcontext.Database.SqlQuery 声明标量变量 '@custid'?

我正在尝试使用EF5从bcontext.Database.SqlQuery执行存储过程。它抛出错误必须声明标量变量“@custid”varresults=_MiscContext.Database.SqlQuery("execsp_GetStaff@custid",customerNumber).ToList();如果customerNumber是员工,SP返回1否则返回空行。ALTERPROCEDURE[dbo].[sp_GetStaff]@custidvarchar(12)ASBEGINSETNOCOUNTON;SELECT1AS[C1]FROM[dbo].[Staff]with(

c# - 使用 EF6 加载数据库初始值设定项时出错

我一直在尝试遵循本教程...http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application但我不断收到以下错误...system.invalidoperationexception={"Failedtosetdatabaseinitializeroftype'WeddingPreparations.Dal.WeddingInitializer,KevinLisaWedding'

c# - Entity Framework 6 : Code First Cascade delete

所以这里有几个类似的问题,但我仍然无法确定在我的简化场景中到底缺少什么。假设我有以下表格,巧妙地以我自己的名字命名:'JohnsParentTable'(Id,Description)'JohnsChildTable'(Id,JohnsParentTableId,Description)生成的类看起来像这样publicclassJohnsParentTable{publicintId{get;set;}publicstringDescription{get;set;}publicvirtualICollectionJohnsChildTable{get;set;}publicJohns

c# - EF 迁移对象已存在错误

我正在使用EntityFramework开发一个ASP.NETMVC项目,代码优先来自数据库。我得到了数据库中每个表的模型。我对模型进行了一些更改,启用了迁移,并且在我初始化迁移时出现错误:Thereisalreadyanobjectnamed'TableName'inthedatabase."我尝试使用update-database-force但没有帮助。初始迁移会创建已存在的表!如何使初始迁移应用模型上的更改而不是从头开始创建表?在这种情况下,在数据库和模型之间同步更改的最佳做法是什么? 最佳答案 尝试运行Add-Migrati

c# - DB-First 身份验证与 ASP.NET Web API 2 + EF6 混淆

我需要为现有的MySQL数据库创建WebAPIC#应用程序。我已经设法使用EntityFramework6将每个数据库表绑定(bind)到RESTfulAPI(允许CRUD操作)。我想实现一个登录/注册系统(以便我可以在未来实现角色和权限,并限制某些API请求)。我必须使用的MySQL数据库有一个用户表(称为user),它具有以下不言自明的列:id电子邮件用户名password_hash似乎身份验证的事实标准是ASP.NetIdentity。我花了最后一个小时试图弄清楚如何使Identity与现有的DB-FirstEntityFramework设置一起工作。如果我尝试构造Applica

c# - 如何在 EF Core 2 中为 .ThenInclude 编写 Repository 方法

我正在尝试为EntityFrameworkCore2.0编写一个存储库方法,该方法可以使用.ThenInclude处理返回的子属性集合,但我在使用第二个表达式时遇到了问题。这是.Include的工作方法,它将返回实体的子属性(您提供lambda列表)。publicTGetSingle(Expression>predicate,paramsExpression>[]includeProperties){IQueryablequery=_context.Set();foreach(varincludePropertyinincludeProperties){query=query.Incl

c# - EF 不同 (IEqualityComparer) 错误

早上好!给定:publicclassFooClass{publicvoidFooMethod(){using(varmyEntity=newMyEntity){varresult=myEntity.MyDomainEntity.Where(myDomainEntity=>myDomainEntity.MySpecialID>default(int)).Distinct(newFooComparer);}}}publicclassFooComparer:IEqualityComparer{publicboolEquals(MyEntity.MyDomainEntityx,MyEntity

c# - EF 可以自动删除孤立的数据,其中父项未被删除吗?

对于使用CodeFirstEF5beta的应用程序,我有:publicclassParentObject{publicintId{get;set;}publicvirtualListChildObjects{get;set;}//Othermembers}和publicclassChildObject{publicintId{get;set;}publicintParentObjectId{get;set;}//Othermembers}必要时,相关的CRUD操作由存储库执行。在OnModelCreating(DbModelBuildermodelBuilder)我已经设置好了:mod

c# - 在 Code First Entity Framework (C# ASP.NET MVC 3) 中指定除 dbo 之外的 SQL 用户名

我正在尝试从通过EF(代码优先)连接的ASP.NETMVC3应用程序中的C#连接到共享托管环境中的SQLServer2008数据库。我的问题是生成的SELECT语句如下所示:SELECT...FROM[dbo].[TableName]它会抛出错误Invalidobjectname,但在我这样做时工作正常:SELECT...FROM[mySQLUserName].[TableName]如何指定dbo以外的用户名(例如mySQLUserName)?编辑:我发现与此问题相关的最接近的文章是:http://weblogs.asp.net/scottgu/archive/2010/08/03/u