【发布时间】:2014-12-10 18:50:30
【问题描述】:
我使用 ASP.NET MVC 开发了一个 n 层应用程序。我可以切换我的 DAL 其他技术。 (ADO.NET、Oracle、MySQL 等。)但首先我使用 ADO 实体框架。但是我应该如何在我的实体中编码关系?例如,我有一个 Product 类,它是一个 Category 类。 (或者我只在我的产品实体中保存 CategoryId ??)如果我使用 EF,我在我的视图中使用 product.Category.CategoryName() 但我认为这是 n 层架构的错误方法。你对这个主题有什么建议。
//Entities
public class Product(){
public int ProductId{get;set;}
public string ProductName{get;set;}
//id or class relation? which one???
public int CategoryId{get;set;}
public Category Category{get;set;} //This works just Entity Framework of course
}
public Category(){
public int CategoryId{get;set;}
public string CategoryName{get;set;}
}
//in my view
<p>
@Product.Category.CategoryName //I think it's not right approach for n-tier application? Pls suggest.
</p>
【问题讨论】:
标签: c# asp.net asp.net-mvc entity-framework n-tier-architecture