Я создал контекст EF из базы данных. Теперь я хочу, чтобы все объекты наследовались от базового объекта, чтобы я мог ссылаться на все сущности, используя этот базовый объект.Как добавить базовый класс/интерфейс к EF6 автогенерированной модели
Public Partial Class Lookup : BaseEntity
{
}
Всякий раз, когда я пытаюсь использовать, DbSet.Add (юридическое лицо)
public class GenericRepository<T> : IRepository<T> where T:IRepositoryEntity
{
#region Private member variables...
internal March2016Entities Context;
internal DbSet<T> DbSet;
#endregion
#region Public Constructor...
/// <summary>
/// Public Constructor,initializes privately declared local variables.
/// </summary>
/// <param name="context"></param>
public GenericRepository(March2016Entities context)
{
this.Context = context;
this.DbSet = context.Set<T>();
}
/// <summary>
/// generic Insert method for the entities
/// </summary>
/// <param name="entity"></param>
public void Insert(T entity)
{
DbSet.Add(entity);
}
}
Это говорит BaseEntity не является частью модели EF. Я попытался изменить класс Context.TT, но кажется, что он будет только helf в генерации классов сущностей, наследующих от базового класса.
Как я могу добавить этот базовый класс в модель сущности, чтобы операции могли работать? Пожалуйста, предложите.
Без проблем делать то, что вы пытаетесь сделать. Возможно, вы создаете/добавляете BaseEntity в DbSet (и не можете). Попробуйте сделать его абстрактным и скомпилировать проект, чтобы вы увидели, где вы это делаете. – bubi
Я добавил точную строку кода, которая бросает исключение. Когда я делаю DBSet.Add (объект Lookup), он выдает ошибку. – rohit
Можете ли вы также показать нам декларацию DBSet? – Domysee