Web APIで匿名型を返す
2023-09-06 02:52:08
質問
MVCを使用しているとき、アドホックJsonを返すのは簡単でした。
return Json(new { Message = "Hello"});
新しいWeb APIでこの機能を求めています。
public HttpResponseMessage<object> Test()
{
return new HttpResponseMessage<object>(new { Message = "Hello" }, HttpStatusCode.OK);
}
のように例外を投げます。
DataContractJsonSerializer
は無名型を扱えないため、例外が発生します。
これを次のように置き換えています。 JsonNetFormatter に基づいて Json.Net . これは
public object Test()
{
return new { Message = "Hello" };
}
を返さないのであれば、Web API を使う意味がないと思います。
HttpResponseMessage
を返さないのであれば、バニラMVCにこだわった方が良い。もし私が使おうとしたら
public HttpResponseMessage<object> Test()
{
return new HttpResponseMessage<object>(new { Message = "Hello" }, HttpStatusCode.OK);
}
をシリアライズしています。
HttpResponseMessage
.
の中で無名型を返せるような解決策をどなたか教えていただけませんか?
HttpResponseMessage
?
どのように解決するのですか?
これはベータ版では動作しませんが、最新のビット版では動作します (ビルド元は http://aspnetwebstack.codeplex.com からビルドされます) ので、おそらく RC ではこの方法が採用されるでしょう。次のようにします。
public HttpResponseMessage Get()
{
return this.Request.CreateResponse(
HttpStatusCode.OK,
new { Message = "Hello", Value = 123 });
}
関連
-
[解決済み】5.7.57 SMTP - MAIL FROMエラー時に匿名メールを送信するためにクライアントが認証されない
-
[解決済み】プロセスが実行されているかどうかを知るには?
-
VSでscanfエラーを恒久的に解決するには、ソースファイルを作成し、自動的に#define _CRT_SECURE_NO_WARNINGS 1を追加してください。
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] jQueryでフォームデータをJavaScriptオブジェクトに変換する
-
[解決済み] HTTP POST Web リクエストの作成方法
-
[解決済み] Chromeを使用してASP.NET Web APIがXMLの代わりにJSONを返すようにするにはどうすればよいですか?
-
[解決済み] IEnumerable<T> と IQueryable<T> を比較する。
-
[解決済み] PHPスクリプトからJSONを返す
-
[解決済み】OKでないレスポンスに対してIHttpActionResultでコンテンツを返す。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み】指定されたキャストが有効でない?
-
解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C# [解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C#.
-
[解決済み】リソースの読み込みに失敗した:ステータス500(内部サーバーエラー)のサーバーの応答)
-
[解決済み] 'IEnumerable<SelectListItem>' 型の ViewData アイテムで、キーが国であるものは存在しない。
-
[解決済み】Entity FrameworkからのSqlException - セッション内で他のスレッドが動作しているため、新しいトランザクションは許可されません。
-
[解決済み】「...は'型'であり、与えられたコンテキストでは有効ではありません」を解決するにはどうすればよいですか?(C#)
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】 C# 条件演算子エラー 代入、call、increment、decrement、await、new object 式のみ文として使用可能です。
-
[解決済み】WebResource.axdとは何ですか?