草庐IT

depth_first_search

全部标签

c# - FK到同表Code First Entity Framework

我是EntityFramework中代码优先方法的新手。我对如何做到这一点感到有点困惑:我需要与同一个表的FK关系,这样我就可以在元素之间建立父-->子关系。这是表格的模型:publicclassBucketGroup{publicintId{get;set;}//ThisisthePKintheTablepublicstringName{get;set;}//NowthistheFK,tothisSameTable:publicint?BucketGroupId{get;set;}}所以我将这个项目设置为Nullable,如果BucketGroupId为NULL,那么我知道它是一个父

c# - 将 EF6 Code First 字符串流畅地设置为 nvarchar(max)

我正在使用FluentAPI构建EF6代码优先模型。我的理解是,默认情况下,字符串将是nvarchar(max),(坦率地说)对于默认值来说是愚蠢的。所以我添加了以下约定代码以将最大默认长度设置为255个字符:modelBuilder.Properties().Configure(p=>p.HasMaxLength(255));然后我像这样创建了一个装饰器:[AttributeUsage(AttributeTargets.Property,AllowMultiple=false,Inherited=true)]publicclassTextAttribute:Attribute{}我想

c# - 如何在 Entity Framework Code First 中以编程方式使用迁移?

我在一个使用EFCodeFirst的项目中工作。我正在尝试使用迁移功能。我不想使用包控制台管理器。如何以编程方式执行“添加迁移”和“更新数据库”?add-migrationTestMigration01-forceupdate-database 最佳答案 您有几个选择。您可以在代码中使用dbmigrator类:http://romiller.com/2012/02/09/running-scripting-migrations-from-code/或者您可以使用migrate.exe,它可以方便地在构建步骤等中运行它们。https:

c# - EF Code First 不为 ICollection<string> 生成表

我想要我的一个数据类中的以下ICollection属性(我们称它为“Foo”)publicclassFoo{[Key]publicintFooId{get;set;}publicstringSomeValueOrOther{get;set;}publicvirtualICollectionAllowedBars{get;set;}}我可以在使用实体上下文时添加字符串值,但它们不会“去任何地方”。换句话说,不会生成表示此关系的表,因此不会保存任何值。我期望的是一个包含两列的表,一列用于“FooId”,一列用于“AllowedBar”,EF会自动将其映射到集合(就像它在复杂类型中所做的那样

c# - Entity Framework DB-First,实现继承

我正在尝试使用EntityFramework6.0和数据库优先方法实现继承。好的,假设我有一个Person和一个Organization实体,如下所示://asimplifiedversionoforganizationentitypublicclassOrganization{publicGuidID{get;set;}publicstringNickname{get;set;}publicstringEmail{get;set;}publicstringPhoneNumber{get;set;}publicstringOfficialName{get;set;}publicGuid

c# - 努力单元测试 Entity Framework 6.1.3 DB-first

我在使用Effort框架(版本1.1.4)对我的DB层进行单元测试时遇到问题。我有一个使用EntityFramework6.1.3的DB层,并且模型是使用数据库优先方法创建的,因此有一个描述模型的*.edmx文件。我已经创建了一个分部类来公开单元测试使用的附加构造函数,如下所示:publicpartialclassEntities{publicEntities(DbConnectionconnection):base(connection,true){}}简单的单元测试看起来像这样:privateEntitiesCreateContext(){//varconnectionString

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# - 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# - 字典 : search key strings with a like feature

我想用类似的功能在字典中搜索我的关键字。我想拿key以“a”开头或者他们的第三个字母是“e”或者他们的第四个字母不是“d”在sql中可以编写查询“where(keylike'a')and(keynotlike'd__')“我想拥有这个功能对于字典。您有什么算法建议吗?谢谢! 最佳答案 虽然这将是表扫描的SQL等效项,但您可以使用LINQ或IEnumerable用于在字典中搜索其键与模式匹配的所有值的扩展方法:扩展方法:varvalues=dictionary.Where(pv=>pv.Key.StartsWith("A")||(pv

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