我在视图中收到此消息: 已经有一个与此Connection关联的开放DataReader,必须先关闭它。
这是我的模特:
public class Product
{
[DisplayName("Id Produit")]
public int productId { get; set; }
[DisplayName("Nom du produit")]
public string productName { get; set; }
[DisplayName("Lien")]
public string productLink { get; set; }
[DisplayName("Categorie")]
public int categoryId { get; set; }
[ForeignKey("categoryId")]
public virtual Category category { get; set; }
[DisplayName("Tags")]
public virtual ICollection<Tag> tags { get; set; }
public Product()
{
tags = new HashSet<Tag>();
}
在视图中这是有效的:
<td>
@Html.DisplayFor(modelItem => item.categoryId)
</td>
但这不起作用:
<td>
@Html.DisplayFor(modelItem => item.category.categoryName)
</td>
实际上,如果我尝试在复杂对象中导航,我会收到有关datareader的消息。 任何的想法? :■
答案 0 :(得分:0)
实际上我必须这样映射:
modelBuilder.Entity<Product>()
.HasRequired(a => a.category)
.WithMany()
.HasForeignKey(u => u.categoryId);
不确定为什么它会解决问题