我有3個不同的模型類:Product,ProductCategory和ProductSubcategory。他們都有類似規定適當的DbContext類:查找返回空對象
public class ProductCategoryDBContext : DbContext
{
public DbSet<ProductCategory> ProductCategories { get; set; }
}
現在我的產品控制器I類要訪問這些其他表也一樣,所以我必須有:
public class ProductsController : Controller
{
private ProductDBContext db = new ProductDBContext();
private ProductCategoryDBContext dbCat = new ProductCategoryDBContext();
private ProductSubcategoryDBContext dbSubcat = new ProductSubcategoryDBContext();
...
}
和
public ActionResult Details(int? id)
{
Product product = db.Products.Find(1);
ProductCategory Category = dbCat.ProductCategories.Find(1);
ProductSubcategory Subcat = dbSubcat.ProductSubcategories.Find(1);
....
}
(I have hardcoded the key values for clarity to make sure that they really are on database.
問題是第一次查找(產品)返回一個適當的值,但兩個後者爲空。那是因爲我打電話給Products控制器嗎,有沒有我在這裏錯過的東西?
只需爲每個正在訪問的數據庫創建一個DbContext。在該上下文中爲每種類型創建一個DbSet。 – krillgar
輝煌!這就是我需要的。今天又學到了新東西TY :) – JussiJ