Asp.net mvc 4 在MVC4中无法获取特定类别的子类别以及类别和子类别模型类的设计问题
我正在mvc中开发帮助台系统 我只有一个主表供用户和技术人员使用 这是我的分类课:Asp.net mvc 4 在MVC4中无法获取特定类别的子类别以及类别和子类别模型类的设计问题,asp.net-mvc-4,Asp.net Mvc 4,我正在mvc中开发帮助台系统 我只有一个主表供用户和技术人员使用 这是我的分类课: public class Category { [Key] public int CategoryId { get; set; } public string Name { get; set; } public virtual ICollection<SubCategory> subCategory { get; set;
public class Category
{
[Key]
public int CategoryId { get; set; }
public string Name { get; set; }
public virtual ICollection<SubCategory> subCategory { get; set; }//category can have more than 1 category
}
公共类类别
{
[关键]
public int CategoryId{get;set;}
公共字符串名称{get;set;}
公共虚拟ICollection子类别{get;set;}//类别可以有多个类别
}
这是我的子类别:
public class SubCategory
{
[Key]
public int SubcategoryId { get; set; }
public string Name { get; set; }
public int CategoryId { get; set; }
public virtual ICollection<TicketInfo> ticketsInfo { get; set; }/to keep track of all tickets under this particular subcategory.
public virtual ICollection<UserDetails> technicianInfo { get; set; }//to keep track of technician and user under this subcategory.
public virtual Category category { get; set; }
}
公共类子类别
{
[关键]
公共int子类别ID{get;set;}
公共字符串名称{get;set;}
public int CategoryId{get;set;}
公共虚拟ICollection ticketInfo{get;set;}/以跟踪此特定子类别下的所有票据。
公共虚拟ICollection technicianInfo{get;set;}//用于跟踪此子类别下的技术人员和用户。
公共虚拟类别{get;set;}
}
这是我的usermaster(它定义了用户和技术人员)
公共类用户详细信息
{
公共字符串用户名{get;set;}
[关键]
public int UserId{get;set;}
公共字符串FName{get;set;}
公共字符串LName{get;set;}
公共字符串PhoneNo{get;set;}
公共字符串EmailId{get;set;}
[数据类型(数据类型.密码)]
公共字符串密码{get;set;}
公共int子类别ID{get;set;}
public int AddressId{get;set;}
公共布尔IsActive{get;set;}
公共日期时间CreatedDate{get;set;}
公共虚拟ICollection角色{get;set;}
公共虚拟子类别子类别{get;set;}
}
现在,当我启动dis查询时:
public list<Category> FetchTicketDetailsforSubcategory(int categoryId)
{
using (HelpDeskdbContext context = new HelpDeskdbContext())
{
var category = from temp in context.Category where temp.CategoryId == categoryId select temp;
return category;
}
}
public list FetchTicketDetailsforSubcategory(int categoryId)
{
使用(HelpDeskdbContext=new HelpDeskdbContext())
{
var category=来自上下文中的temp.category,其中temp.CategoryId==CategoryId select temp;
退货类别;
}
}
它只显示类别,但不显示该类别下的子类别
它在子类别上显示了这一点:ObjectContext实例已被释放,不能再用于需要连接的操作。
有人能找出我的课堂设计有什么问题吗???试试这个
context.Category.Where(x=>x.CategoryId == categoryId).SelectMany(x=>x.subCategory).ToList()
context.Category.Where(x=>x.CategoryId == categoryId).SelectMany(x=>x.subCategory).ToList()