public class HbfContext : DbContext
{
public DbSet<Bank> Banks { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Bank>().ToTable("Bank");
}
}
My Bank table:
BankID INT
BankName VARCHAR(50)
My Bank class looks like this:
public class Bank
{
public int Id { get; set; }
public string Name { get; set; }
public bool IsActive { get; set; }
}
I am having issues when I want to return all the banks. The SQL statement returned from:
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
This is not going to work because my table does not have the Id, Name and IsActive columns. How would I fix this and would EF map BankId to Id and BankName to Name automatically?
Anonymous User
28-Sep-2013Hi Pravesh!
You could use System.ComponentModel.DataAnnotations to map the property names to match those in your existing table e.g.