[解決済み] WebAPI 2 の DefaultInlineConstraintResolver エラー
2022-04-27 11:45:50
質問
Web API 2 を使用していますが、ローカルマシンの IIS 7.5 を使用して API メソッドに POST を送信すると、次のエラーが表示されます。
The inline constraint resolver of type 'DefaultInlineConstraintResolver' was unable to resolve the following inline constraint: 'string'.
Line 21: GlobalConfiguration.Configuration.EnsureInitialized();
IISを使用して、私のAPIはどれも動作しません。しかし、Visual StudioでIIS Expressを使用してAPIプロジェクトを実行し、ログインAPIへのPOSTには成功しましたが、別のAPI呼び出しにGETリクエストを行おうとすると、制約リゾルバーエラーが発生しました。
この問題を解決するために、私は Visual Studio でまったく新しい Web API 2 プロジェクトを作成し、既存の API を 1 つずつ新しいプロジェクトにインポートして、それらを実行して動作することを確認し始めました。この新しいプロジェクトでIIS Expressを使用すると、既存のAPIプロジェクトで行ったのとまったく同じ結果が得られます。
何が足りないのでしょうか?新しいプロジェクトでも、この制約リゾルバの問題にぶつかることなくGETリクエストを行うことができません。
解決方法は?
このエラーは、Routeのどこかで、以下のような指定をしていたことを意味します。
[Route("SomeRoute/{someparameter:string}")]
quot;string"は、他に何も指定されなければ想定される型なので必要ありません。
エラーが示すように
DefaultInlineConstraintResolver
というインライン制約がないため、Web API が出荷されています。
string
. デフォルトでサポートされているものは以下の通りです。
// Type-specific constraints
{ "bool", typeof(BoolRouteConstraint) },
{ "datetime", typeof(DateTimeRouteConstraint) },
{ "decimal", typeof(DecimalRouteConstraint) },
{ "double", typeof(DoubleRouteConstraint) },
{ "float", typeof(FloatRouteConstraint) },
{ "guid", typeof(GuidRouteConstraint) },
{ "int", typeof(IntRouteConstraint) },
{ "long", typeof(LongRouteConstraint) },
// Length constraints
{ "minlength", typeof(MinLengthRouteConstraint) },
{ "maxlength", typeof(MaxLengthRouteConstraint) },
{ "length", typeof(LengthRouteConstraint) },
// Min/Max value constraints
{ "min", typeof(MinRouteConstraint) },
{ "max", typeof(MaxRouteConstraint) },
{ "range", typeof(RangeRouteConstraint) },
// Regex-based constraints
{ "alpha", typeof(AlphaRouteConstraint) },
{ "regex", typeof(RegexRouteConstraint) }
関連
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み] コンフィグエラーです。このコンフィギュレーションセクションは、このパスでは使用できません
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] ASP.NET WebサイトとASP.NET Webアプリケーションのどちらを選ぶか?
-
[解決済み] エラー - IISメタベースにアクセスできません。
-
[解決済み] 既存のASP.NET MVC 4 WebアプリケーションのプロジェクトにWeb APIを追加するにはどうすればよいですか?
-
[解決済み] [Solved] User 'IIS APPPOOLASP.NET v4.0'のログインに失敗しました。
-
[解決済み】Web Application Project [...] は、IIS を使用するように構成されています。Webサーバーが見つかりませんでした。
-
[解決済み】Visual StudioでNuGetパッケージのリストアを有効にするにはどうすればよいですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] エンティティタイプ ApplicationUser は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
解決済み] 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#.
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】クロススレッド操作が有効でない。作成されたスレッド以外のスレッドからアクセスされたコントロール
-
[解決済み] [Solved] 不正な文字列値: '\xEFxBFxBD' for column
-
[解決済み] [Solved] .NETでスレッドの終了を待つには?
-
VSでscanfエラーを恒久的に解決するには、ソースファイルを作成し、自動的に#define _CRT_SECURE_NO_WARNINGS 1を追加してください。
-
[解決済み] MVC Web API 2 で api/people/STAFF.45287 などのリクエストにドット文字「.