У меня есть контекст с этими двумя классами:
В классе Brand есть список объектов Bike.
Когда я пытаюсь поместить список Bike в экземпляр Brand,программа возвращает мне это исключение:
Invalid column name 'Strokes'.
Invalid column name 'BrandBike_BrandID'.
Это мой контекст:
public class MyContext: DbContext
{
public DbSet<Brand> Brands{ get; set; }
public DbSet<Bike> Bikes{ get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
Database.SetInitializer<MyContext>(null);
base.OnModelCreating(modelBuilder);
}
}
Это мой класс с именем Бренд:
public class Brand
{
[Key]
public int BrandID { get; set; }
[Required]
public string Name { get; set; }
public Country Nationality { get; set; }
public virtual List<Bike> Models { get; set; }
}
public class Bike
{
[Key]
public int BikeID { get; set; }
public string Model { get; set; }
public BikeCategory Category { get; set; }
public int EngineCapacity { get; set; }
public int Strokes { get; set; }
public double Price { get; set; }
public virtual Brand BrandBike { get; set; }
}
Это таблица Брэндовструктура:
CREATE TABLE [dbo].[Brands] (
[BrandID] INT IDENTITY (1, 1) NOT NULL,
[Name] NVARCHAR (MAX) NULL,
[Nationality] INT NOT NULL,
CONSTRAINT [PK_dbo.Brands] PRIMARY KEY CLUSTERED ([BrandID] ASC)
);
А это структура таблицы Bike:
CREATE TABLE [dbo].[Bikes] (
[BikeID] INT IDENTITY (1, 1) NOT NULL,
[Model] NVARCHAR (MAX) NULL,
[Category] INT NOT NULL,
[EngineCapacity] INT NOT NULL,
[Price] FLOAT (53) NOT NULL,
[Brand_BrandID] INT NULL,
CONSTRAINT [PK_dbo.Bikes] PRIMARY KEY CLUSTERED ([BikeID] ASC),
CONSTRAINT [FK_dbo.Bikes_dbo.Brands_Brand_BrandID] FOREIGN KEY
([Brand_BrandID]) REFERENCES [dbo].[Brands] ([BrandID])
);
GO
CREATE NONCLUSTERED INDEX [IX_Brand_BrandID]
ON [dbo].[Bikes]([Brand_BrandID] ASC);
Как мне решить эту проблему?