我正在使用Entity Framework 4.1 Code First
连接到一个已经存在的数据库。我首先使用的表名为Bank
。我还有一个Bank类
作为我的领域模型。这是我如何映射我的类和表:
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)
我的 Bank 类看起来像这样:
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);
is:
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吗?