私はEFでWebApiプロジェクトを作成しました.jsonレスポンス用に設定されていると、ナビゲーションプロパティのすべてのデータを含むjsonオブジェクトのクエリ(エンティティ)が提供され始めました。私はEFからの怠惰な読み込みをオフにしましたが、私の応答にナビゲーションエンティティのデータが含まれていないことがわかりました。しかし、依然として、応答として示された空の配列はほとんどありません。どうすればそれらを完全に取り除くことができますか?ナビゲーションプロパティを削除するにはWebAPIレスポンスjsonからEFの空の配列を削除しますか?
それに加えて、jsonレスポンスは、私の応答に$ .id属性を追加していますが、削除することもできますか?
{
$id: "1",
ChargePoints: [ ],
ChargerActionHistory: [ ],
ChargingBoxModels: null,
ChargingStations: null,
StatusCodes: null,
WallSettings: null,
Heartbeats: [ ],
PK_ChargingBoxID: 2,
FK_ChargingStationsID: 1,
FK_WallSettingsID: 1,
FK_StatusCodeID: 1,
FK_ChargingBoxModelID: 1,
DeviceID: "HUB399209-UK",
ChargingBoxName: "ArneCharger",
CSEndpoint: null,
CBEndpoint: null,
CSPort: null,
CBPort: null,
DeviceIP: null,
OperationalPhase: null,
HeartbeatInterval: 5,
MeterInterval: 10,
Notes: "test device",
CommissionedDate: "2016-05-23T13:52:07.193",
ExpiryDate: "2016-06-23T13:52:07.193",
isAuthenticated: true,
isPublic: true,
isActive: true,
Keys: "39c5f761-5c08-4b3d-9b88-adcfd75ss26b"
}
いくつかのコードスニペットは、あなたの問題にもっと意味を与えます。 – Venky
通常、ドメインモデルは直接返されません。それらをPOCOオブジェクトに変換して公開する必要があります。 POCOを作成する際に、どのプロパティをワールドに公開するかを指定できます。 – Venky
これはオーバーヘッドではありませんか?コンバージョンドメインモデルを特定のpocoオブジェクト、ユーザー、そしてポコからドメインモデルに変換します。 – Shahzad