EntityFramework5代码先行,如何配置不同列名的分表关系?
Posted
技术标签:
【中文标题】EntityFramework5代码先行,如何配置不同列名的分表关系?【英文标题】:EntityFramework5 code first , How configure the table splitting relation with different column name? 【发布时间】:2012-11-21 21:43:47 【问题描述】:我有两个表,我想用 EntityFramework 查询,使用一个主表,这是用于存储辅助数据的第二个表,我希望我可以进行左连接但我做不到,这里是元素:
public class TableA
public int Id get; set;
public string Value get; set
public class OptionalDataTableB
public int OptionalDataTableBId get; set;
public string OtherValue get; set;
这里是映射类
public class TableAMap: EntityTypeConfiguration<TableA>
public TableAMap ()
this.HasKey (e => e.Id);
this.Property (e => e.Id)
. IsRequired ()
.HasDatabaseGeneratedOption(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption.Identity);
public class OptionalDataTableBMap: EntityTypeConfiguration<OptionalDataTableB>
public OptionalDataTableB ()
this.HasKey (e => e.OptionalDataTableBId);
this.Property (e => e.OptionalDataTableBId)
. IsRequired ()
我想与 DbContext 建立关系
public class MyDbContext: DbContext
protected override void OnModelCreating (DbModelBuilder ModelBuilder)
modelBuilder.Configurations.Add (new Mapping.TableAMap());
modelBuilder.Configurations.Add (new Mapping.OptionalDataTableBMap());
如何配置映射才能产生这种请求? :
select *
from TableA
left join OptionalDataTableB On TableA.Id = OptionalDataTableB.OptionalDataTableBId
【问题讨论】:
【参考方案1】:来自 MSDN 的以下内容应该可以回答您的问题:http://msdn.microsoft.com/en-us/data/hh134698.aspx
【讨论】:
请不要只删除链接,而是简要总结一下为什么它适用。链接很快断开。但是,此链接不涵盖 OP 的问题。 感谢您的回答,但我想做的不是“一对一”的关系以上是关于EntityFramework5代码先行,如何配置不同列名的分表关系?的主要内容,如果未能解决你的问题,请参考以下文章
在nginx上面配置了ssl证书,用来https访问,但是内网可以访问,外网不能访问,求高人指点!先行谢过!
如何从 NuGet 安装 EntityFramework 5.0(和其他旧版本)?
在 .NET4.5 上安装 EntityFramework5.0.0 后错误:“System.Data.Entity.Internal.AppConfig”的类型初始化程序在运行时引发异常