私はクライアントサイドスクリプトから呼び出される.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が返さ:私は匿名型は全く__TYPE属性を生成しないオブジェクトとして返さことに気づいた
{"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":[...
なぜ気になりますか?あなたはそれを無視できませんか? –
もちろん、JSONを使うのは、オブジェクトをできるだけ軽くすることです。その余分な属性は、私のオブジェクト上の余分な重量です。 –
@Groxx:本番環境では「スタックトレースをダンプする」ことをお勧めします。本番環境でバグのあるコードを実行するのではなく、エラーを見つけることができます。 –