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

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 投票する
2 に答える
3843 参照

asp.net-mvc-4 - 新しい Web API アプローチを理解する

MVC アプリケーションを開発するときに誰もが完全なアーキテクチャを使用しているわけではないことは承知していますが、次のアーキテクチャがあると仮定しましょう。


MVC アプリケーション内では、次のアプローチに従うようにしています。

  • Controller 内 (メソッド内) で、ViewModel をインスタンス化します。
  • その ViewModel 呼び出しメソッドを App.Service Layer から埋めます
  • ViewModel が満たされると、それを View に戻します (ビューは厳密に型指定されます)。

これは 99.9% の確率で発生します。それはきれいで、私たちはそれが好きで、それ自体をかなりうまく活用しています..など!

今私の質問は次のとおりです。

アプリケーションを MVC 4.0 に移行し、新しいWeb APIアプローチの使用を開始することにした場合、それが現在のアーキテクチャのどこ (またはどのように) に適合するかを完全に理解できるかどうかわかりません。

私たちはこれを変える用意があることを心に留めておいてください!

App.Service と App.Web の間に配置する新しい App.WebAPI レイヤーを作成する必要がありますか? これは、コントローラー内で App.Service を直接呼び出す必要がなくなり、代わりに新しい App.WebAPI レイヤーを呼び出すことを意味します。

または、Web API を App.Web レイヤー内に残して、コントローラーが他の APIControllers を呼び出すようにし、それが App.Service レイヤーを呼び出しますか?

ここで何か意味があるかどうかはわかりませんが、さまざまな情報に興味があるので、遠慮なく提案してください。

ありがとう

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

asp.net-mvc-routing - MVC4のUriPathExtensionMapping

MVC4でUriPathExtensionMappingを使用するにはどうすればよいですか?フォーマッターに次のようなマッピングを追加しました。

ただし、次のような動詞を追加しない限り、ルートで拡張機能を使用することはできません。

次に、目的のメディアタイプを認識しますが、アクションのパラメーターとして「拡張」も期待し始めます。例:

ただの代わりに:

どうすればこれを解決できますか?

ありがとう!

0 投票する
4 に答える
71967 参照

asp.net-mvc-4 - グローバル ASP.Net Web Api フィルターを追加するには?

( を使用して) Web Api フィルターを作成しましたSystem.Web.Http.Filters.ActionFilterAttributeが、ASP.Net MVC 4 内で機能させることができません。メソッドに追加しようとしましたRegisterGlobalFilters()が、機能しませんでした。

では、ASP.Net MVC でホストされている Web Api を使用している場合、フィルターを登録するにはどうすればよいでしょうか?

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

asp.net-mvc-4 - 新しい ASP.NET Web API では、"バッチ" 要求をどのように設計すればよいですか?

新しい ASP.NET Web API に基づいて Web API を作成しています。複数のデータセットを同時に送信する人々を処理する最善の方法を理解しようとしています。100,000 件のリクエストがある場合は、一度に 1,000 件を送信できるようにするとよいでしょう。

Contacts Controller に create new Contact メソッドがあるとします。

ユーザーが新しい連絡先を「バッチ」送信できるようにする適切な方法は何ですか? 考えている:

これは良い習慣ですか?これは、連絡先の JSON 配列を使用して GET 要求を解析しますか (それらが正しくフォーマットされていると仮定します)?

最後に、バッチ リクエストに応答するための最適な方法についてのヒントを教えてください。300回のうち4回失敗したら?

どうもありがとう!

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

asp.net-mvc - WebApiコントローラーとWCFWebAPIの違い

重複の可能性:
WCFWebAPIとASP.NETWebAPIの違いは何ですか

私はMVC4の新機能を見始めました。注目すべき新機能の1つはApiControllersです。

WCF WebAPIではなくこれを使用する理由をまだ理解できませんか?これは、MicrosoftがWCF WebAPIをフェードアウトしようとしているためですか、それともすべてのツールセットをMVC 4プロジェクトである1つの場所に集めようとしているためですか?

0 投票する
11 に答える
97608 参照

c# - Unityを使用してASP.NETWebAPIコントローラーに依存関係を注入することはできません

IoCコンテナーを使用してASP.NETWebAPIコントローラーに依存関係を注入することに成功した人はいますか?私はそれを機能させることができないようです。

これが私が今していることです。

私の中でglobal.ascx.cs

私のコントローラーファクトリー:

依存関係を解決するためにユニティファイルを検索することは決してないようで、次のようなエラーが発生します。

タイプ'PersonalShopper.Services.WebApi.Controllers.ShoppingListController'のコントローラーを作成しようとしたときにエラーが発生しました。コントローラにパラメータのないパブリックコンストラクタがあることを確認してください。

System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(HttpControllerContext controllerContext、Type controllerType)at System.Web.Http.Dispatcher.DefaultHttpControllerFactory.CreateInstance(HttpControllerContext controllerContext、HttpControllerDescriptor controllerDescriptor)at System.Web.Http.Dispatcher.DefaultHttpControllerFactory.CreateController (HttpControllerContext controllerContext、String controllerName)at System.Web.Http.Dispatcher.HttpControllerDispatcher.SendAsyncInternal(HttpRequestMessage request、CancellationToken cancelToken)at System.Web.Http.Dispatcher.HttpControllerDispatcher.SendAsync(HttpRequestMessage request、CancellationToken cancelToken)

コントローラは次のようになります:

私のユニティファイルは次のようになります。

以前のバージョンのmvcでは、コントローラーファクトリが依存関係を解決する必要があると判断するため、コントローラー自体の登録がないことに注意してください。

私のコントローラーファクトリーは呼び出されていないようです。

0 投票する
8 に答える
46008 参照

rest - AuthorizeAttribute による ASP.NET Web API 承認

新しい ASP.NET Web API ベータ版の使用。ユーザーを認証するための提案された方法を機能させることができないようです。提案されたアプローチがあるように思われる場合は、[Authorize]フィルターを API コントローラーに追加します。例えば:

ただし、これは意図したとおりには機能しません。リソースをリクエストすると、ログイン フォームにリダイレクトされます。これは RESTful WebAPI にはあまり適していません。

これをどのように進める必要がありますか?将来のバージョンでは動作が異なりますか? または、独自のアクション フィルターの実装にフォールバックする必要がありますか?

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

c# - Web フォームの ASP.NET Web API

Visual Studio 2010 (sp1) を使用して WEB FORMS で asp.net Web API を使用しようとしていますhttp://myrandomykien.blogspot.com/2012/02/simplest-web-api-site-with -nuget.html

Visual Studio 開発サーバーを使用すると動作しますが、iis 7.5 を使用するとエラー HTTP 404.0 - Not Found が発生します。

編集

これは私のGlobal-asaxです

これはAPIクラスです

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

wcf-web-api - Castle.ActiveRecord.dllはASP.NETMVC4WebAPIと互換性がありません

MSFTは、.NET4.5は.NET4と下位互換性があると主張しています。先に進んで.NET4.5とVS11をインストールし、新しいASP.NET MVC 4WebAPIプロジェクトを作成しました。Castle.ActiveRecord.dll(バージョン3.0.0.0)をWeb APIプロジェクトに参照すると、すべてのコントローラーアクションで次のエラーが発生します。

私が読んだことから、これは興味深いです。バージョン2.3.1.3はLucene(java)バージョンであり、Lucene.Netバージョンではありません。念のためNuGetを確認しましたが、Lucene.Netで使用できるバージョン2.3.1.3はありません。

何が得られますか?新しいASP.NETMVC4 Web APIプロジェクトを実行してみたいと思います。これは、ASP.NETMVCとWCFWebAPIの好きなところをブレンドしているためです。この問題を回避する方法について何かアイデアはありますか?

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

.net - Task.Factory.ContinueWhenAll 呼び出しの適切な構造

ContinueWhenAll を適切に使用していることを確認したいと思います。非同期で実行される呼び出しが多数あり、他のタスクが正常に完了した後にのみ最終タスクを完了したい。結果に対していくつかの計算を行って、代わりに処理を停止して禁止された HTTP を返す必要があるかどうかを確認します。結果。私が確信していないのは、最後の行が実際に他のすべてのタスクが完了するのを待つのか、それとも別の構造にする必要があるのか​​ ということです. もしそうなら、 if(getPlatformTask.Result... の評価を通過した場合にのみ呼び出されるように、最後の行をどのように構成する必要がありますか?