ASP.NET Core WEB API

【 ASP.NET Core WebAPI 】複数のモデルを同時にJSON形式にしてレスポンスする

ASP.NET Core(.NET 6)の複数のモデルを同時にJSON形式にしてレスポンスする方法を解説します。

ASP.NET Core WebAPI

複数のモデルクラスをJSONで返却する

ASP.NET CoreのWebAPIでは、単一のモデルクラスをJSONとして返却するアクションメソッドを実装するのが一般的です。

単一のモデルクラスにJSONとして返したいプロパティをいくつか用意しておいて、それを返却するというような流れです。

一方で、複数のモデルクラスをJSONとして返却したいという場合もありますので、その場合のアクションメソッドの実装例を以下で紹介したいと思います。

複数のモデルクラスをJSONで返却するアクションメソッド 実装例

以下が複数のモデルクラスをJSONで返却するアクションメソッドの実装例になります。

[HttpGet]
public ActionResult GetMultipleModel()
{
    // 各モデルのインスタンス変数を作成
    Model1 m1 = new Model1();
    Model2 m2 = new Model2();
    // varクラスの変数に、各モデルの変数を代入
    var res = new { Model1 = m1, Model2 = m2 };
    return Ok(res);
}

上記のアクションメソッドの返却値となるJSONは以下のような内容になります。

{
    "model1":{
        ...
    },
    "model2":{
        ...
    }
}

おすすめ記事はコチラ

スマレジ テックファーム 1

スマレジ テックファーム で Webエンジニアとして勤めている tomoです。 今回は株式会社スマレジや私が所属している 「 スマレジ テックファーム 」についてPRしていきたいと思います。 スマレジ ...

2

FromBody 属性を使用して、 ASP.NET Core(.NET 6)のWebAPIでBodyパラメータのJSONを受け取る方法を解説します。 FromBody 属性 POSTやGETで呼び出さ ...

PC picture 3

ASP.NET Core(.NET 6)でCookie認証のタイムアウトを設定する方法を解説します。 Cookieの有効期限について Cookieには通常はタイムアウト(有効期限)を設定します。 基本 ...

4

ASP.NET Core(.NET 6)でクロスオリジンリクエスト ( CORS )を設定する方法を解説します。 簡単に クロスオリジンリクエスト ( CORS )とは何かについても少し解説したいと思 ...

-ASP.NET Core, WEB API
-, , ,