Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 在MVC4中无法获取特定类别的子类别以及类别和子类别模型类的设计问题_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 4 在MVC4中无法获取特定类别的子类别以及类别和子类别模型类的设计问题

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;

我正在mvc中开发帮助台系统

我只有一个主表供用户和技术人员使用

这是我的分类课:

 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()