.NET CoreでApiControllerは非推奨なのか?
質問
というのは本当ですか "
ApiController
は.NET Core"で非推奨になるというのは本当ですか?私は新しいプロジェクトでそれを使用することを計画しているので、尋ねています。
どのように解決するのですか?
ASP.NET Core 2.1 のアップデート
ASP.NET Core 2.1以降では、Web APIコントローラを作成するための新しいタイプのセットが利用できます。コントローラのアノテーションには
[ApiController]
属性でアノテーションすることで、モデルの状態の自動検証やバインディングソースのパラメータ推論などのいくつかの新機能を利用することができます。詳しくはドキュメントをご覧ください。
https://docs.microsoft.com/en-us/aspnet/core/web-api/index?view=aspnetcore-2.1#annotate-class-with-apicontrollerattribute
.
確かに、特に
ApiController
クラスはありません。しかし
Controller
クラスには、ビューやモデルバインディングなど、Web API のみの開発ではおそらく必要ない機能がたくさん含まれています。
何か違うものを求めるなら、2つのオプションがあります。
を使用する。
ControllerBase
クラスを
Microsoft.AspNetCore.Mvc.Core
パッケージ内にある
または
あなたの
ApiController
基底クラスを作成します。ここで重要なのは
[ActionContext]
属性を追加することです。
ActionContext
のインスタンスをプロパティに注入します。
[Controller]
public abstract class ApiController
{
[ActionContext]
public ActionContext ActionContext { get; set; }
}
また
[Controller]
属性を追加し、MVC コントローラ検出のためのコントローラとしてマークします。
詳細は私の 「MVC 6 の Web API」ブログポストをご覧ください。 .
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み】HRESULTからの例外:0x800A03ECエラー
-
[解決済み] Could not find a part of the path ... binroslyncsc.exe
-
[解決済み] .NET Coreと.NET Standard Class Libraryのプロジェクトタイプの違いは何ですか?
-
[解決済み] EXEを出力する.NET Coreコンソールアプリケーションを構築する
-
[解決済み] ASP.NET MVCにおけるApiControllerとControllerの相違点
-
[解決済み] ASP.NET CoreでAutomapperを設定する方法
-
[解決済み】大文字・小文字を区別しない「Contains(string)
-
[解決済み】.NET Standardと.NET Coreの比較
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】スクリプトクラスが見つからないので、スクリプトコンポーネントを追加できない?
-
[解決済み】SmtpException: トランスポート接続からデータを読み取れません:net_io_connectionclosed
-
[解決済み】Sequence contains no matching element(シーケンスにマッチする要素がない
-
[解決済み】Entity FrameworkからのSqlException - セッション内で他のスレッドが動作しているため、新しいトランザクションは許可されません。
-
[解決済み】Moqを使用してメソッド呼び出しを検証する
-
[解決済み】Visual Studio: 操作を完了できませんでした。パラメータが正しくありません
-
[解決済み】2つ(またはそれ以上)のリストを1つに統合する(C# .NETで
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み] 関数を終了するには?
-
[解決済み】WebResource.axdとは何ですか?