草庐IT

ef-code-first

全部标签

c# - Entity Framework Code First - 两个名称相同但 namespace 不同的实体

我在以下情况下遇到数据库生成问题:1.csFirst.Entities命名空间中的项目实体映射到First_Project表。namespaceFirst.Entities{#regionusingsectionusingSystem.Collections.Generic;usingSystem.ComponentModel.DataAnnotations;usingSystem.Data.Entity.ModelConfiguration;usingSystem.Diagnostics.CodeAnalysis;#endregion[Table("First_Project")]p

c# - 如何在 Entity Framework Code First 中设置 0..* 关系?

我有两个类的下一个代码:publicclassObject{publicintObjectID{get;set;}publicintObject2ID{get;set;}publicvirtualObject2Object2{get;set;}}publicclassObject2{publicintObject2ID{get;set;}publicvirtualICollectionObjects{get;set;}}我知道使用EntityFramework,这将创建一对多关系,但我想知道的是如何将其转换为零对多关系。我是EntityFramework的新手,我找不到任何直接的答案。

c# - ef-core 加载嵌套 tph 继承成员的集合属性

给定以下类结构publicclassParent{publicGuidId{get;publicListChildren{get;set;}}publicabstractclassBaseChild{publicintId{get;set;}publicstringChildName{get;set;}}publicclassNormalChild:BaseChild{publicDateTimeBirthDate{get;set;}}publicclassRichChild:BaseChild{publicListOffshoreAccounts{get;set;}}publiccl

c# - EF 4.1 Code First - 添加列

我已经设置了我的数据库,我想向模型添加一个新字段,向表添加一个新列,有没有一种方法可以在不丢失所有数据的情况下执行此操作?通常,如果您删除数据库,它会自动重新创建所有内容,但我不想丢失数据。我使用SQLServer2008作为数据库。 最佳答案 您将需要使用EF迁移将新列添加到您的数据库中。您可以阅读有关EF迁移的更多信息here和here. 关于c#-EF4.1CodeFirst-添加列,我们在StackOverflow上找到一个类似的问题: https:/

c# - Entity Framework 代码第一个链接表中违反 PRIMARY KEY 约束

我有一个用户表和一个角色表。有一个自动生成的UsersRoles链接表,其中包含来自User和Roles表的Id。这是使用以下代码生成的:modelBuilder.Entity().HasMany(u=>u.Roles).WithMany(r=>r.Users).Map(c=>{c.MapLeftKey("UserId");c.MapRightKey("RoleId");c.ToTable("UsersRoles");});当我尝试添加不相关的实体并调用Context.SaveChanges()时,我收到以下错误:ViolationofPRIMARYKEYconstraint'PK_U

c# - EF Code First 中的模型 n--n 关系如何与自动生成的 View 正常工作?

我使用EFCodeFirst并在n-n关系中遇到问题,假设我们有一位歌手演唱某些流派,所以我们需要这个模型:艺术家、流派和艺术家流派,我将模型定义如下:这是我的艺术家模型:publicclassArtist{publiclongId{get;set;}publicstringName{get;set;}publicICollectionGenres{get;set;}}还有我的流派模型:publicclassGenre{publiclongId{get;set;}publicstringTitle{get;set;}publicICollectionArtists{get;set;}}

c# - EntityFramework Code First 对属性 getter/setter 做了什么?

在使用CodeFirst时,EntityFramework究竟做了什么来映射具有自定义getter和setter的属性?它是否只是在序列化时调用属性的getter,反序列化时调用setter?所以我可以做一些愚蠢的事...publicclassFoo{publicDateTimeTimeAccessed{get{returnDateTime.Now;}set{TimeDeserialized=DateTime.Now;}}[NotMapped]publicDateTimeTimeDeserialized{get;privateset;}}注意我对使用上面的代码或任何类似的代码没有实际兴

c# - Entity Framework 代码优先 : Configuration. cs 种子或自定义初始值设定项

我是第一次使用EntityFramework的CodeFirst风格。我想设置一些默认数据。我遇到的第一种方法涉及创建一个custominitializer.我走的是这条路线,但在设置迁移后注意到它随Configuration.cs一起提供,它已经覆盖了种子方法,就像自定义初始化程序一样。internalsealedclassConfiguration:DbMigrationsConfiguration{publicConfiguration(){AutomaticMigrationsEnabled=false;}protectedoverridevoidSeed(Toolkit.Mo

c# - Entity Framework 5 - 派生类的基于枚举的鉴别器

我有以下内容(为清楚起见进行了缩写)-一个枚举、一个具有该枚举的基类,以及两个将枚举设置为特定值的派生类。publicenumMyEnum{Value1,Value2}publicclassMyBaseClass{publicMyEnum{get;protectedset;}}publicclassDerivedOne:MyBaseClass{publicDerivedOne{MyEnum=MyEnum.Value1;}}publicclassDerivedTwo:MyBaseClass{publicDerivedTwo{MyEnum=MyEnum.Value2;}}我想要做的是让En

c# - Entity Framework 代码优先 : CASCADE DELETE for same table many-to-many relationship

我在EntityFramework和同一实体的多对多关系方面存在条目删除问题。考虑这个简单的例子:实体:publicclassUserEntity{//...publicvirtualCollectionFriends{get;set;}}流畅的API配置:modelBuilder.Entity().HasMany(u=>u.Friends).WithMany().Map(m=>{m.MapLeftKey("UserId");m.MapRightKey("FriendId");m.ToTable("FriendshipRelation");});我是否正确,无法在FluentAPI中定