【发布时间】:2012-02-09 13:46:56
【问题描述】:
我正在使用Entity Framework 4.1 code first 连接到已经存在的数据库。我首先使用的表称为Bank。我还有一个Bank class 作为我的域模型。这就是我映射班级和表格的方式:
public class HbfContext : DbContext
{
public DbSet<Bank> Banks { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Bank>().ToTable("Bank");
}
}
我的银行表:
BankID INT
BankName VARCHAR(50)
我的银行类如下所示:
public class Bank
{
public int Id { get; set; }
public string Name { get; set; }
public bool IsActive { get; set; }
}
我想退回所有银行时遇到问题。返回的 SQL 语句:
return db.Banks
.OrderBy(x => x.Name);
是:
SELECT
[Extent1].[Id] AS [Id],
[Extent1].[Name] AS [Name],
[Extent1].[IsActive] AS [IsActive]
FROM
[dbo].[Bank] AS [Extent1]
ORDER BY
[Extent1].[Name] ASC
这不起作用,因为我的表没有 Id、Name 和 IsActive 列。我将如何解决这个问题,EF 会自动将 BankId 映射到 Id 并将 BankName 映射到 Name 吗?
【问题讨论】:
标签: c# entity-framework ef-code-first ef-fluent-api