В моем проекте есть компонент, который отображает список продуктов в определенной группе c.
public class ProductListIncategoryViewComponent : ViewComponent
{
private IProductRepository productRepository;
public ProductListIncategoryViewComponent(IProductRepository repoprod)
{
productRepository = repoprod;
}
public IViewComponentResult Invoke(int priorityid)
{
MixProductView result = productRepository.SelectByCategory(priorityid);
return View(result);
}
}
Вводом компонента является groupID.
Поэтому я вызываю компонент дважды показать продукты двух групп. например:
@await Component.InvokeAsync("ProductListIncategory", new { priorityid = 3 })
@await Component.InvokeAsync("ProductListIncategory", new { priorityid = 4 }) //Error
У меня ошибка при выполнении этого два раза подряд.
Невозможно получить доступ к удаленному объекту. Распространенной причиной этой ошибки является удаление контекста, который был разрешен путем внедрения зависимостей, а затем попытка использовать тот же экземпляр контекста в другом месте вашего приложения. Это может произойти, если вы вызываете Dispose () для контекста или заключаете контекст в оператор using. Если вы используете внедрение зависимости, вы должны позволить контейнеру введения зависимости позаботиться об удалении экземпляров контекста. Имя объекта: 'KuteCoredbContext
, но нет ошибки при вызове компонента один раз
@await Component.InvokeAsync("ProductListIncategory", new { priorityid = 3 })
или при вызове компонента другим groupid
@await Component.InvokeAsync("ProductListIncategory", new { priorityid = 4 })