Entity Framework 4.1 code first
을 사용하여 기존 데이터베이스에 연결합니다. 내가 처음 사용하는 테이블은 Bank
입니다. 도메인 모델로 Bank class
도 있습니다. 에기존 데이터베이스 테이블에 매핑
public class Bank
{
public int Id { get; set; }
public string Name { get; set; }
public bool IsActive { get; set; }
}
내가 원하는 :
이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)
이것은 내가 내 클래스와 테이블을 매핑하는 방법입니다 모든 은행을 돌려 보내라.
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, 이름 및이 isActive 열이 없기 때문에 작동하지 않을 SQL 문에서 반환. 어떻게하면이 문제를 해결할 수 있을까요? 그리고 EF가 BankId를 Id 및 BankName에 자동으로 매핑합니까?
내 테이블 구조에서 볼 수있는 ID 및 이름 열이 없습니다. 따라서 도메인 모델의 속성을 변경하는 대신 유창한 API를 통해 열 이름을 속성에 매핑하는 것이 현명한 방법일까요? –
나는이 부분을 놓쳤다. 클래스 선언이 테이블과 다른 경우 모든 차이점을 매핑해야합니다. 샘플을 수정했습니다. –