問題タブ [asp.net-web-api-routing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2159 参照

asp.net-web-api-routing - メソッドが見つかりません: 'System.Web.Http.Controllers.ServicesContainer

VS2012 で webAPI を使用してルートを登録しようとしています。GlobalConfiguration.Configuration.Routes で、以下のエラーがスローされます。誰かがこれで私を助けることができますか?


0 投票する
1 に答える
139 参照

c# - パラメータXまたはパラメータYのいずれかが含まれるようにWebAPIルートを設定できますか?

コントローラのGET関数の場合、名前を渡す必要があります。PUT関数の場合、IDを(メッセージ本文のオブジェクトとともに)渡す必要があります。例えば:

nameまたはidパラメーターのいずれかが存在する必要があるルートを作成できますか?擬似コードの場合:

または、これをルーティングするための最良の方法は何ですか?

0 投票する
1 に答える
4871 参照

asp.net-web-api - Asp.net Web API:コントローラーでアクションが見つかりませんでした

私は Visual Studi0 2010 を使用しています。構成のWebApiConfig.cs下にある私のファイルでは、これら 2 つの URL/Values/Values/1. 正常に動作しています。

/Values/Machinesやのようなカスタム URL が欲しかったので、/Values/Machines/100上記の設定を以下に変更しました。

現在、この URL 以外の URL の下にマッピングされています/Values/1。私が欠けているものを教えてください。

ありがとう。

0 投票する
2 に答える
2463 参照

asp.net - WebApi の Html.BeginForm - ルーティング

ソリューションの一部として Web API プロジェクト (MVC4 プロジェクトも含む) があり、Api プロジェクト内で (Api プロジェクト内のビューから) 値コントローラーの Post メソッドにフォームを投稿しようとしています。

使用Html.BeginForm()またはHtml.BeginForm("Post", "Values")投稿先/Values/Postですが、移動するにはそれが必要です/api/Values/Post

どのオーバーロードまたは設定を正しい場所に投稿する必要があるか考えていますか?

フィドラーからすべてのアクション メソッドを正常にヒットできます (例: localhost/api/values)。

0 投票する
1 に答える
1859 参照

asp.net-mvc - How do you route from an MVC project to an MVC ApiController in another project?

I've been struggling with this problem for at least 4 hours now, trying every solution I could find.

My main project is set up with Asp.Net and MVC which works great routing to controllers within the project. I'm integrating a library that exposes a JSON api that uses ApiControllers in another project but I can't get the main project to route to anything in the library project, it just returns a strait 404.

In my main project global.asax:

In my library project UserController:

None of the URLs that I expect to work do: /testapi /testapi/User /testapi/User/Get /testapi/User/Get?id=1

They all return 404.

I've even used the route debugger to verify that the routes appear to be set up correctly: routes

What am I missing?

0 投票する
2 に答える
1786 参照

asp.net-web-api - Web APIへのPOSTリクエストでのJSON逆シリアル化の問題(EF 5を使用)

AzureSQLDBから.edmxファイルを生成するためにADD.netDBモデルを使用して生成されたデータモデルがあります。

以下のような.edmxファイル用に生成されたコードを含むデザイナーファイル-

そして、コントローラーメソッドとして

POSTリクエストで渡すJSON本文は-

問題:

  1. PostリクエストをWebAPIに送信することはできますが、ユーザーオブジェクトには、値がnullに設定されたプロパティが入力されます。

私には、問題はJSONシリアル化にあるようです。問題をBingしてみたところ、Web APIに組み込まれているJSONシリアル化はひどく、デフォルトのシリアライザーとしてJSON.NETをカスタム定義する必要があることがわかりました。残念ながら、これは私にはうまくいきませんでした。

足りないものはありますか?

はい、フィドラーを介して送信するPostリクエストは次のようになります

0 投票する
1 に答える
3515 参照

c#-4.0 - 偽造防止トークン

MVC.NET 4.0 を使用して Web サイトを完成させましたが、ローカルホストですべてが完全に機能します。ただし、サーバーにサイトをアップロードし、ユーザー名とパスワードでログインしようとすると、ログイン時にエラーが発生します:-

問題は正確には何ですか?アカウント コントローラーのログイン アクションを変更する必要はありますか?

ご協力いただきありがとうございます

0 投票する
3 に答える
1232 参照

asp.net-web-api - WebApi パラメータ

私は WebApi を初めて使用し、パラメーターのマッピングを理解していません。2 つのパラメーターを持つ HttpGet メソッドを持つコントローラーがありました。のように定義された WebApiConfig マッピングで

これはうまくいくように見えました。

同様に、3 つのパラメーター HttpGet メソッドを持つ別のコントローラー (DetailsController) を追加しました。

私は追加しました

しかし、に移動する

404エラーを出し、言う

要求に一致するコントローラー「詳細」でアクションが見つかりませんでした。

しかし、このようにナビゲートします

正しい結果が得られます。

何故ですか?最初のケースのように、カンマで区切ってください。そして、最初のケースでは機能するのに、2番目のケースでは機能しないのはなぜですか?

作業コントローラーのメソッド:

動作していません:

どちらにも HttpGet 属性があります。

0 投票する
1 に答える
227 参照

asp.net - ASP.NET mvc 複数ルーティング

同じ問題で多くのページをグーグル検索しましたが、問題を解決できませんでした。だから私はコントローラにこれを持っています

そしてこれは WEBApiConfig にあります:

localhost/api/questions と localhost/api/questions/1 を入力しても意味がわかりません

複数のルートエラーが発生します...

ありがとうございました..

0 投票する
2 に答える
1263 参照

asp.net-mvc - ルーティング エラーをキャッチする

私は RESTful API を構築しており、消費者へのすべての可能な出力を制御したいと考えています。ExceptionFilterAttributeコントローラーで発生したすべての例外をフィルター処理するために を実装しています。ただし、これでは、コントローラー コードに到達する前にアプリケーションで発生する可能性のあるエラー (ルーティング エラーなど) を制御することはできません。デフォルトの動作では、標準のシリアル化された HttpError が返され、コントローラーのクラス名など、好みに合わない内部情報が多すぎます。これは避けたいと思います。この動作を変更する最良の方法は何ですか?