即时通讯工作与一个新的ASP.NET MVC3项目,它似乎像我缺少我的LINQ技能的东西。访问包含的对象
Im为json“call”格式化数据以用于我的jqGrid。
它工作正常,但现在我想通过Linq .Include()表达式添加相关对象。 想我最好用代码展示。
var query = db.Products.Include("Category");
var jsonData = new
{
total = 1, // calc
page = page,
records = db.Products.Count(),
rows = query.Select(x => new { x.Id, x.Name, x.PartNr })
.ToList()
.Select(x => new {
id = x.Id,
cell = new string[] {
x.Id.ToString(),
x.Name.ToString(),
x.PartNr.ToString(),
//x.Category.Name.ToString()
//This does not work but object is there.
}}).ToArray(),
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
问题区=>//x.Category.Name.ToString()
这里奇怪的是,如果我打破并观看查询(//x.Category.Name.ToString()
)其实我可以找到连接类别的对象,但怎么样,如果可能的话,我可以用它在我的肛方法?
不'x.Category.Name'有什么数据类型? –
请定义“不起作用”。什么***正好发生?如果抛出异常,那么***确切的***消息是什么? (并且在Lasse的问题之间读取:是否它可能是一个'Category'有'Name'实际上是'null'?) –