我对 linq to entity / Json / MVC.net 4 有最奇怪的行为
我有这段代码,出于某种奇怪的原因,所有其他列表的属性顺序都颠倒了。
var output = db.FooBar.Where(a => a.lookupFoo == bar)
.Select(a => new List<double>{
//value's are the same per row
//for demonstration sake.
a.fooBarA, //Always 12.34
a.fooBarB, //Always 12.34
a.fooBarC, //Always 0
a.fooBarD //Always 0 //lazy casting to double from int
});
return Json(new {output});
输出如下所示:
{
"output": [
[12.34, 12.34, 0, 0],
[0, 0, 12.34, 12.34],
[12.34, 12.34, 0, 0],
[0, 0, 12.34, 12.34]
]
};
我已经设法通过在 Where 和 Select 之间放置一个来解决它toList()
,但我仍然想知道为什么会发生这种行为。
更多信息:EF 4.4(tt 生成的上下文),SQL Server 2008r2 express .NET 4.0,MVC 3.0,Vanilla System.Web.Mvc.JsonResult,表由一个 int 主键组成,浮点值不包括最后一个 int