簡體   English   中英

使用JavaScriptSerializer在MVC4中將linq結果轉換為JSON時出現問題

[英]Issue while converting linq result to JSON in MVC4 using JavaScriptSerializer

我試圖使用JavaScriptSerializer將linq結果轉換為JSON,但我沒有得到所需的輸出。

我的代碼是(我使用C#):

string Departments = "";
JavaScriptSerializer jss = new JavaScriptSerializer();
Departments =  jss.Serialize(db.Departments.ToList());
ViewBag.Department = Departments;

我得到的是:

[{"DepartmentId":2,"DepartmentName":"Cardiology","EntityState":2,"EntityKey":{"EntitySetName":"Departments","EntityContainerName":"ClinicDbEntities","EntityKeyValues":[{"Key":"DepartmentId","Value":2}],"IsTemporary":false}},{"DepartmentId":6,"DepartmentName":"ENT","EntityState":2,"EntityKey":{"EntitySetName":"Departments","EntityContainerName":"ClinicDbEntities","EntityKeyValues":[{"Key":"DepartmentId","Value":6}],"IsTemporary":false}},{"DepartmentId":7,"DepartmentName":"Paediatrics","EntityState":2,"EntityKey":{"EntitySetName":"Departments","EntityContainerName":"ClinicDbEntities","EntityKeyValues":[{"Key":"DepartmentId","Value":7}],"IsTemporary":false}},{"DepartmentId":8,"DepartmentName":"General","EntityState":2,"EntityKey":{"EntitySetName":"Departments","EntityContainerName":"ClinicDbEntities","EntityKeyValues":[{"Key":"DepartmentId","Value":8}],"IsTemporary":false}}]

我需要的是這樣的:

[ { DepartmentId: 2, DepartmentName: "Cardiology" }, { DepartmentId: 6, DepartmentName: "ENT" },{ DepartmentId: 7, DepartmentName: "Paediatrics" },{ DepartmentId: 8, DepartmentName: "General"}]

有人可以幫我嗎。 先感謝您!

Departments= jss.Serialize(
              db.Departments.Select(d => new{
                    DepartmentId = d.DepartmentId,
                    DepartmentName = d.DepartmentName
                })
            );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM