Я использую 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 с именем?