Я получаю ошибку
Незаконный доступ к загрузочной коллекции
когда я пытаюсь получить список вариантов, относящихся к определенному товару. Отображение NHibernate как показано ниже
<list name="Variants" lazy="false" cascade="save-update" inverse="false" table="PluginProduct_ProductVariant">
<key column="ProductId" />
<index column="Ordinal" />
<one-to-many class="Plugin.Product.Business.Entities.Variant, Plugin.Product" />
</list>
Я уже пытался изменить лень и обратные свойства, как предлагалось в других темах на этом сайте, но они не сработали.
Я использую NHibernate в сочетании с ASP.NET MVC и пытаюсь просмотреть коллекцию вариантов на мой взгляд. Представление вызывает следующий метод
public ActionResult ShowProduct()
{
var id = new Guid(PluginData.PageParameters["Id"]);
var variant = _variantService.GetVariantById(id);
var product = variant.Product;
return PluginView("ShowProduct.ascx", product);
}
Приведенный выше код работает без проблем. Но когда я отлаживаюсь непосредственно перед возвратом представления, я вижу, что список вариантов, который содержит продукт, пуст. Когда я открываю более подробную информацию об отладке, она показывает мне ошибку коллекции.
В своем веб-приложении я пытаюсь сделать следующее
<%
foreach (var variant in Model.Variants)
{%>
kleur: <%= variant.Color %>
van: <%= variant.FromPrice %> voor: <%= variant.Price %>
<%} %>