Я разрабатываю приложение в Asp. net MVC ядре, в котором я использую обобщенный c интерфейс, как показано ниже:
public interface IRepository<TEntity, TKeyType> where TEntity : class where TKeyType : struct
{
TEntity Add(TEntity entity);
}
И ниже приведена реализация it.
public class EntityRepository<TEntity, TKeyType> : IRepository<TEntity, TKeyType> where TEntity : class where TKeyType : struct
{
protected readonly DrinkDbContext Context;
protected readonly DbSet<TEntity> DbSet;
public EntityRepository(DrinkDbContext context)
{
Context = context;
DbSet = context.Set<TEntity>();
}
public virtual TEntity Add(TEntity entity)
{
Context.Add(entity);
return entity;
}
}
Кроме того, я наследую класс EntityRepository в ShoppingCartRepository, который выглядит следующим образом:
public class ShoppingCartRepository<ShoppingCartItem, Int32> : EntityRepository<ShoppingCartItem, Int32>
where ShoppingCartItem : class where Int32 : struct
{
public ShoppingCartRepository(DrinkDbContext context) : base(context) { }
public override ShoppingCartItem Add(ShoppingCartItem entity)
{
base.Add(entity);
return entity;
}
}
и способен видеть заполненные свойства класса в методе во время выполнения , Пожалуйста, найдите скриншот как показано ниже:
Но когда я пытаюсь использовать эти свойства во время компиляции, я не могу увидеть эти свойства. Снимок экрана приведен ниже.
Как получить доступ к свойствам ShoppingCartItem , который передается в метод Add как параметр?