タグ付けされた質問 「asp.net-web-api」

ASP.NET Web APIは、ブラウザーやモバイルデバイスなどのクライアント用のHTTPサービスを構築するためのフレームワークです。これは、Microsoft .NET Frameworkに基づいており、RESTfulサービスを構築するための理想的な選択肢です。

13
Request.GetOwinContextが見つかりません
私は、なぜこれが機能しないのかを理解するために1時間探していました。 WebAPIを備えたASP.Net MVC 5アプリケーションがあります。Request.GetOwinContext()。Authenticationを取得しようとしていますが、GetOwinContextを含める方法が見つかりません。これが私のコードです: using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web; using System.Web.Mvc; using System.Web.Security; using TaskPro.Models; namespace TaskPro.Controllers.api { public class AccountController : ApiController { [HttpPost] [AllowAnonymous] public ReturnStatus Login(LoginViewModel model) { if (ModelState.IsValid) { var ctx = Request.GetOwinContext(); // <-- Can't find this …
101 c#  asp.net-web-api  owin 

4
グローバルASP.Net Web APIフィルターを追加する方法?
(を使用してSystem.Web.Http.Filters.ActionFilterAttribute)Web APIフィルターを作成しましたが、ASP.Net MVC 4内で機能させることができません。RegisterGlobalFilters()メソッドに追加しようとしましたが、機能しませんでした。 では、ASP.Net MVCでホストされているWeb APIを使用している場合、どのようにフィルターを登録するのでしょうか。

10
エラーメッセージまたは例外でNotFound()IHttpActionResultを返すにはどうすればよいですか?
IHttpActionResultWebApi GETアクションで何かが見つからない場合、NotFoundを返します。この応答とともに、カスタムメッセージや例外メッセージ(ある場合)を送信します。current ApiControllerのNotFound()メソッドは、メッセージを渡すためのオーバーロードを提供しません。 これを行う方法はありますか?または私は自分のカスタムを作成する必要がありIHttpActionResultますか?

5
Web APIを使用してファイルを返す方法は?
ASP.NET Web APIを使用しています。API(APIが生成する)からC#でPDFをダウンロードしたい。 APIにを返すだけでbyte[]いいですか?そしてC#アプリケーションのために私はただ行うことができます: byte[] pdf = client.DownloadData("urlToAPI");? そして File.WriteAllBytes()?

10
WebApiでヘッダー値を追加および取得する方法
アプリケーションからWebApiメソッドにデータを送信できるように、WebApiでPOSTメソッドを作成する必要があります。ヘッダー値を取得できません。 ここで、アプリケーションにヘッダー値を追加しました。 using (var client = new WebClient()) { // Set the header so it knows we are sending JSON. client.Headers[HttpRequestHeader.ContentType] = "application/json"; client.Headers.Add("Custom", "sample"); // Make the request var response = client.UploadString(url, jsonObj); } WebApi postメソッドに従う: public string Postsam([FromBody]object jsonData) { HttpRequestMessage re = new HttpRequestMessage(); var headers = …

8
userIDをパラメーターとして渡さずに、ApiControllerアクション内で現在のユーザーを取得します。
userNameまたはuserIdをパラメーターとして渡さずに、安全なApiControllerアクション内で現在のユーザーを取得するにはどうすればよいですか? 安全な行動の範囲内であるため、これは利用可能であると想定しています。安全なアクションとは、ユーザーが既に認証されており、リクエストにベアラートークンがあることを意味します。WebApiがユーザーを承認したとすると、アクションパラメーターとして渡さなくても、userIdにアクセスする組み込みの方法が存在する可能性があります。

6
「System.Net.Http.HttpContent」には、「ReadAsAsync」の定義と拡張メソッドが含まれていません
作成したWeb APIを使用するコンソールアプリを作成しました。コンソールアプリのコードはコンパイルされません。それは私にコンパイルエラーを与えます: 'System.Net.Http.HttpContent' does not contain a definition for 'ReadAsAsync' and no extension method 'ReadAsAsync' accepting a first argument of type 'System.Net.Http.HttpContent' could be found (are you missing a using directive or an assembly reference?) このエラーが発生するテストメソッドを次に示します。 static IEnumerable<Foo> GetAllFoos() { using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Add("appkey", "myapp_key"); var …

30
IIS 7.5でホストされているWeb APIでHTTP 404ページが見つかりません
Web APIアプリケーションがあります。VS 2010デバッグ開発サーバーを使用してテストしたところ、問題なく動作しました。しかし、IIS 7.5に展開すると、アプリケーションにアクセスしようとするとHTTP 404エラーが発生します。 これが私のweb.configです <?xml version="1.0" encoding="utf-8"?> <configuration> <connectionStrings> <add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=aspnet-FlowGearProxy-20123141219;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings> <appSettings> <add key="webpages:Version" value="2.0.0.0" /> <add key="webpages:Enabled" value="true" /> <add key="PreserveLoginUrl" value="true" /> <add key="ClientValidationEnabled" value="true" /> <add key="UnobtrusiveJavaScriptEnabled" value="true" /> </appSettings> <system.web> <compilation debug="true" targetFramework="4.0" /> <authentication mode="Forms"> <forms …

14
ASP.NET Identityのクレームを更新するにはどうすればよいですか?
MVC5プロジェクトにOWIN認証を使用しています。これは私のSignInAsync private async Task SignInAsync(ApplicationUser user, bool isPersistent) { var AccountNo = "101"; AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie); var identity = await UserManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); identity.AddClaim(new Claim(ClaimTypes.UserData, AccountNo)); AuthenticationManager.SignIn(new AuthenticationProperties() { IsPersistent = isPersistent, RedirectUri="Account/Index"}, identity); } ご覧のとおりAccountNo、クレームリストに追加しました。 では、アプリケーションのある時点でこのクレームを更新するにはどうすればよいですか?これまでのところ、私はこれを持っています: public string AccountNo { get { var CP = ClaimsPrincipal.Current.Identities.First(); var Account= CP.Claims.FirstOrDefault(p => p.Type == …

5
Web APIルーティング-api / {controller} / {action} / {id}「dysfunctions」api / {controller} / {id}
Global.asaxにデフォルトルートがあります。 RouteTable.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = System.Web.Http.RouteParameter.Optional } ); 特定の機能をターゲットにしたいので、別のルートを作成しました。 RouteTable.Routes.MapHttpRoute( name: "WithActionApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = System.Web.Http.RouteParameter.Optional } ); だから、私のコントローラーでは、私は: public string Get(int id) { return "object of id id"; } [HttpGet] public IEnumerable<string> ByCategoryId(int id) { return new string[] { …

3
asp.net mvcアプリケーションで1つのコントローラーアクションの要求タイムアウトを設定する方法
アプリケーションの特定のコントローラーアクションのリクエストタイムアウトを増やしたいのですが。アプリケーション全体のweb.configで実行できることはわかっていますが、この1つのアクションだけで変更したいと思います。 Web.configの例: <system.web> <httpRuntime executionTimeout="1000" /> </system.web> どうすればいいのですか?


4
WCFとASP .Net Web API
各テクノロジーを使用することの長所と短所は何ですか? WCF Web ApiがAsp.netに統合されましたAsp.net Web apiがセルフホスティングをサポートするようになりました。 同じ操作で複数のプロトコルスキーマを公開したい場合でも、まだWCFに頼るか、Mvcエンドポイントでもこれを実行できるのかと思います。 また、新しいAsp.Net Web APIはWsdlを公開しますか?そうでない場合、クライアントはどのような操作が可能かをクライアントがどのように理解するでしょうか? 間違いなく、Mvcの最高の機能はモデルバインダーです。WCFと同等の堅牢性はありますか? では、Asp.net Web APIがもたらすメリットを誰かに教えてもらえますか?WCFの方が圧倒的に強力でスケーラブルな選択肢、imoのようです。Mvc Web ApiがWCFモデルに対して持っている唯一のことは、おそらく開発の容易さですが、それは、それが最終的に深刻な設計上の制限となる場合、不法占拠を意味します。

17
MVC4 Web APIでファイルまたはアセンブリ 'System.Net.Http、Version = 2.0.0.0を読み込めませんでした
ちょっと変な問題があります。 MVC 4と新しいWeb APIを使用してアプリを開発したところ、ローカルで正常に動作しました。サーバーにMVC4をインストールしてアプリをデプロイしました。今、私は次のエラーを受け取ります: ファイルまたはアセンブリ 'System.Net.Http、Version = 2.0.0.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35'またはその依存関係の1つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULTからの例外:0x80131040) 説明:現在のWebリクエストの実行中に未処理の例外が発生しました。エラーとエラーの発生場所の詳細については、スタックトレースを確認してください おかしなことに、パッケージフォルダーまたはASP.NET MVC 4 \ AssembliesフォルダーにローカルにあるSystem.Net.Httpのバージョンは1.0.0.0です。実際にSystem.Net.Httpへの参照をプロジェクトから削除しましたが、それでも同じメッセージが表示されます。2.0.0.0参照がどこから取得されるのか、それがローカルでは機能するがサーバーでは機能しない理由について少し混乱しています。 nugetの依存関係を見る: ASP.NET WEb APIコアライブラリ(ベータ版)は、System.Net.Http.Formattingに依存しています。 また、System.Net.Http.FormattingはSystem.Net.Httpに依存しています。 これが原因だと思います。しかし、私はこのパッケージのバージョン2.0.20126.16343をインストールしていますが、内部のdllのバージョンが1.0.0.0であるというだけです。 何か不足していますか? 更新: これは別のASP.NETアプリのサブアプリケーションですが、もう1つはまだWebFormsに基づいています。だから、何かがめちゃくちゃになっています。しかし、web.configのアセンブリセクションの下でクリーンアップを実行すると、アプリ自体が見つからない場合でも、

10
ASP.NET Web API:要求されたリソースはhttpメソッド 'GET'をサポートしていません
ApiControllerで次のアクションを実行します。 public string Something() { return "value"; } また、ルートを次のように構成しました。 routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); ベータ版ではこれで問題なく動作しましたが、最新のリリース候補に更新したところ、次のような呼び出しでエラーが発生しました。 リクエストされたリソースはhttpメソッド「GET」をサポートしていません。 なぜこれが機能しないのですか? (私は{action}を削除して大量のコントローラーを作ることができると思いますが、それは面倒に感じます。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.