Сводка
Я изменил решение nopCommerce, включив в него новую сущность с подходом CodeFirst, оно успешно обновило базу данных, как показано на изображении ниже.
Фото с обновленной таблицей базы данных
Когда я пытаюсь получить доступ к таблице репозитория, которая вставляется через AutoFrac, я получаю строки, возвращаемые репозиторием, но все столбцы содержат нулевые значения. Обратите внимание, что количество строк в таблице такое же, как и в таблице базы данных, поэтому кажется, что она подключена, но значения не отображаются.
{
public partial class NutrientService : INutrientService
{
#region fields
protected readonly IRepository<ProductNutrient> _productNutrientRepository;
#endregion fields
#region Ctor
public NutrientService(IRepository<ProductNutrient> productNutrientRepository)
{
_productNutrientRepository = productNutrientRepository;
}
#endregion Ctor
public IList<ProductNutrient> GetNutrients()
{
var query = from p in _productNutrientRepository.Table
select p as ProductNutrient;
var list = query.ToList();
return list;
}
public IList<ProductNutrient> GetNutrientsByProductID()
{
var query = from p in _productNutrientRepository.Table
select p as ProductNutrient;
var list = query.ToList();
return list;
}
}
}
Отладка, показывающая нулевые значения, возвращаемые из репозитория
Определение таблицы в SQL Management Studio
public class ProductNutrient : BaseEntity
{
public int NutrientID;
public int ProductID;
public string Nutrient;
public bool ShowLessThan;
public decimal Value;
public string Unit;
}
}
Репозиторий работает с другими таблицами, но в любом случае вот код репозитория
/// </summary>
public virtual IQueryable<TEntity> Table => Entities;
/// <summary>
/// Gets an entity set
/// </summary>
protected virtual ITable<TEntity> Entities => _entities ?? (_entities = _dataProvider.GetTable<TEntity>());
#endregion
}
select p as ProductNutrient;
, вероятно, делает не то, что вы думаете,p
это что-то другое. А зачем тебе это бросать? Но репозиторий нам не виден (особенно что там за_productNutrientRepository.Table
) и, тем не менее, вопрос можно задать без всех картинок. - person Gert Arnold   schedule 07.01.2021