我正在使用從客戶端腳本調用的.net腳本服務,它的工作原理非常好。.net腳本Web服務:__type屬性
唯一的問題是它會爲每個返回的對象生成一個'__type'屬性,這是我不需要或不需要的。
我見過這個幾個帖子在網上,而據我所知,只有「變通」這個:
一些人建議躲在參數少c'tor返回類型爲'內部保護',
其他人建議不要使用[ScriptMethod]標記,而是用JSON手動輸出結果並返回一個字符串。
我想知道是否有另一個更好的解決方案。順便說一句,這個屬性用於什麼呢?
我附上了服務方法和生成的JSON。
方法:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
public IEnumerable<EmployeePO> GetEmployeesForDepartment(int DepartmentId)
{
return new AdministrationController().GetEmployeesForDepartment(DepartmentId);
}
JSON返回:
{"d":[{"__type":"Application.Controllers.PresentationObjects.EmployeePO","Positions":[{"__type":"Application.Controllers.PresentationObjects.PositionPO","Id":4,"Name":"Employee: 1test Position 1","IsPriority":false,"WarningThreshold":50,"CriticalThreshold":60,"CurrentWaitingTime":-1,"Passengers":[],"Qualifications":[...
你爲什麼在意?你不能忽略它嗎?當然是 – 2011-02-13 00:37:42
,但使用JSON的重點在於讓對象儘可能輕。這額外的屬性只是我的對象額外的重量。 – 2011-02-13 07:45:05