#c# #entity-framework #asp.net-mvc-4
#c# #entity-framework #asp.net-mvc-4
Вопрос:
Вот мой код (модель);
public class XpsEntity
{
public DbSet<AModel> A { get; set; }
public DbSet<TModel> T { get; set; }
public class SDbContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<XpsEntity>().ToTable("Table1");
modelBuilder.Entity<XpsEntity>().ToTable("Table2");
}
}
Мое кодирование неверно? Потому что каждый раз, когда я создаю контроллер с использованием MVC Controller Entity Framework. Я всегда получаю ошибку «Неподдерживаемый тип контекста».
Комментарии:
1. Эти свойства dbset должны быть вложены в производный класс dbcontext
2. Как именно вы «создаете контроллер»?
Ответ №1:
DbSet
свойства должны быть вложены в DbContext
производный класс
public class SDbContext : DbContext {
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Entity<AModel>().ToTable("Table1");
modelBuilder.Entity<TModel>().ToTable("Table2");
}
public DbSet<AModel> A { get; set; }
public DbSet<TModel> T { get; set; }
}
Комментарии:
1. Обновите свой вопрос более подробной информацией о том, как у вас настроен контекст и модели
2. Когда я создаю контроллер, это параметры; Класс модели: AModel (MvcApplication4. Модели), класс контекста данных: XpsEntity(MvcApplication4. Модели), представления: Razor.
3. Поместите это в исходное сообщение, как именно вы это сделали, чтобы мы могли лучше понять, что вы сделали. Добавление их в комментарии на самом деле не помогает.