問題タブ [actionresult]
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.
c# - このコードが0kbのファイルをブラウザに送信するのはなぜですか?
これが電話です...
[わからないのでコンテンツの長さをnullに設定したことに注意してください(ファイルは別のサーバーにあります)]
a.AssetPathは次のとおりです: " http://http.cdnlayer.com/account name/folder/folder/folder/asset.mp3"
(この例の偽のURLですが、私の実装ではファイルを直接参照できますが、この添付方法は機能しません)
これが実装です...
ファイルは私が望むように直接ダウンロードされています(ブラウザで開かれていません)が、ファイルではなく、同じ名前の0kbファイルです。
asp.net-mvc - ASP.NET MVC で [HttpGet] ActionResult へのアクセスを制限する方法は?
次のような ActionResult があるとします。
一致する都市のリストを取得するための独自の小さな REST ベースのサービスであるかのように、これを使用して、私のサイト以外のすべてのサイトを停止するにはどうすればよいですか? リファラーをチェックすることが唯一の方法ですか?それとも何か良いアイデアはありますか?
asp.net-mvc - ASP.NET MVC と StructureMap を使用したベストプラクティス DI - ActionResult に依存関係を挿入する方法
質問全体を編集したので、不思議に思わないでください:)
さて、私は、ActionResult
ドメイン モデル データといくつかの追加パラメーター (リストをページングするためのページ インデックスとページ サイズ) を取る が必要です。Web リクエストの種類 (ajax リクエストかどうか) に応じて、PartialViewResult または ViewResult を返すかどうかを決定します。
参照されたデータは、IMappingService を使用して自動的にマップされます。IMappingService は、ドメイン モデル データをビュー モデルに変換します。MappingService は、簡単にするために AutoMapper を使用します。
MappingActionResult:
BaseHybridViewResult:
AutoMappedHybridViewResult:
コントローラーでの使用法:
ご覧のとおり、IMappingService
が隠されています。IMappingService
を使用する場合、コントローラーはインターフェースについて何も認識してはなりませんAutoMappedHybridViewResult
。
は適切ですかMappingActionResult
、static IMappingServer
それとも DI の原則に違反していますか?
asp.net-mvc-2 - コントローラーを IoC フレームワークに依存しないようにしながら、ActionResults で Ninject を使用するにはどうすればよいですか?
私が見たほとんどすべての Ninject の例では、コントローラーに依存関係を自動的に挿入する ASP.NET MVC でそれを使用する方法を説明しています。ただし、Ninjectを手動で使用するにはどうすればよいですか? カスタム ActionResult があるとしましょう:
次に、コントローラーで、次JsonResult
のようなメソッドを使用しています。
ご覧のとおり、オブジェクトを自分でインスタンス化しているため、Ninject のインジェクションが回避されSerializer
、null になります。ただし、次の方法でそれを行うのは、私にはまったく正しくないようです。
コントローラーで Ninject に依存するだけでなく、静的クラス/シングルトンで Ninject カーネルを公開し、インジェクションに依存するオブジェクトがカーネル経由でのみ作成されるようにする必要があるためです。
カーネルの公開に依存せずに依存関係を注入するように Ninject を構成する方法はありますか? new
可能であれば、キーワードを使用できるようにしたいと思います。
asp.net-mvc - ブラウザへのC#MVCインスタントレスポンス?
繰り返しますが、MVC初心者に質問します。経験不足をお許しください。
MVC ルートを使用して大きな XML ファイルを返す状況があります。場合によっては、非常に大きくなることがあります。現在、私は StringBuilder を使用して必要な XML 出力を作成し、次のように返しています。
私が直面しているのは、(さまざまな理由で) XML ブログの生成にかなりの時間がかかる可能性があるということです。
XmlObject.WriteXml() メソッド内には、呼び出されたときに XML の断片を出力する他の小さなメソッドが多数呼び出されているため、すぐに XML 文字列の作成を開始します。完了するまでに時間がかかります。これらの各メソッドは StringBuilder を引数として受け入れるため、作成した後、各小さなメソッド内で sb.Append() を使用して最終的な XML BLOB を構築することで、それをあらゆる場所に渡すことができます。
わかりました。私がやりたいことは、文字列が構築され始めたらすぐにクライアントに何かを返し始めることです。Web フォームでは、すべての StringBuilder パラメータを HttpResponse に置き換え、次のような方法で StringBuilder.Append() の代わりに HttpResponse.Write() を使用します。
次に、XML の小さな断片が応答に書き込まれるたびに、テキストがクライアントに送信されます。
私が抱えている問題は、ActionResult に return ステートメントが必要なことです。MVC ルートと ActionResult を使用して同様の方法で処理する方法がわかりません。おそらく、ActionResult 以外のものを使用する必要がありますか?
みんなありがとう!
asp.net - 単体テストまたは実行時の ActionResult 文字列出力応答は ExecuteResult 経由ですか?
質問...
いくつかのコントローラーメソッドから文字列応答とコンテンツタイプを単体テストする最良の方法は何ですか?
使用中...
各メソッドは を返します。ActionResult
そのうちのいくつかはViewResult
応答です。ASP.NET MVC 2 RTM とMoqを使用しています。
具体的には...
TextWriter
から を取得し、からHttpContext.Response
の完全な文字列応答を含めたいと考えていますActionResult
。
なんで?
1.単体テスト内
出力にコンテンツが存在するかどうかを特定してテストしたいと思います。
2.ワーカースレッドによるランタイム
バックグラウンド ワーカー スレッドを使用してリモート サーバー上の静的コンテンツを更新します。このコンテンツはコントローラーからの出力であり、そのように生成する必要があります。HTTP 経由で同じサーバーにリクエストを送信することはお勧めできません。更新されるファイルは数千に上るからです。
RuntimeとUnit Testsの両方で同じコードが使用されていますが、非常に似ているのでしょうか?
つまずき1
ルートまたは呼び出しRegisterRoutes
を必要とせず、呼び出しを成功させるようにモッキングを正しくセットアップする方法はRegisterAllAreas
、現在、内部で例外をスローしますBuildManagerWrapper::IBuildManager.GetReferencedAssemblies
。
サンプルコード
私のモックヘルパーは次のようになります。
そして、 TestMethod での私の現在の試みは次のとおりです。
私のエリア、ビュー、共有ファイルは次のとおりです。
- Areas\Coded\Controllers\CodeController.cs
- Areas\Coded\Views\Coded\CodedJavaScript.aspx
- Areas\Coded\CodedAreaRegistration.cs
-Views\Shared\CodedJavaScript.Master
EDIT : ユニット テストとランタイム実行の両方が含まれるように編集されました。統合テストについて言及してくれた@Darin Dimitrovに感謝しますが、この質問にはランタイム要素もあります。
EDIT : alexn によって参照される MvcIntegrationTestFrameworkのソース コードの一部を使用して、いくつかのテストとレビューを行っ た後。とを使用AppDomain.CreateDomain
して新しいリクエストを作成すると、値が使用されSimpleWorkerRequest
ているため、アクティブなリクエストが既にあるプロセスでこのメソッドを使用して新しいリクエストを作成することはできないことがわかりました。static
したがって、これはこのメソッドを除外します。
おそらく同じ問題ですが、部分ビューからの結果をより直接的に文字列として返すことができるかどうか疑問に思っていますか?
asp.net-mvc-2 - asp.net mvc 2アクション結果出力に動作を追加する方法
2 つのコントローラーと 2 つのアクションがあるとします。
コントローラ -> AController アクション -> MethodA()
.
コントローラ -> BController アクション -> MethodB()
どちらも View(typedObject) によって xml データを返します。
この出力をクライアントに返す前に、base 64 エンコーディングを追加したいと考えています。MethodA と MethodB について。また、このエンコーディングに含める必要がある他の方法もいくつかあるかもしれません。
アクション結果の動作/処理を達成する良い方法はありますか?
これにカスタムのアクション結果を追加するのが最善でしょうか?
asp.net-mvc - ASP.NET MVC:ActionResultを文字列に変換する方法は?
既存のアクションメソッドを使用して、その戻り値を文字列にレンダリングし、AJAXリクエストへの応答用のJSONとして送信したいと思います。
これを行うには、ActionResultを文字列にレンダリングする必要があります。どうすればこれを行うことができますか?
this.Content()を使用して文字列をActionResultに変換できるのとは逆です。
アップデート
既存の最初のアクションメソッドはタイプActionResultを返しますが、実際にはHTTPPOSTリクエストに応答するためにViewResultを返します。AJAXリクエストに応答するJsonResultを返す2番目のアクションメソッド(私のファサード)があります。この2番目のアクションメソッドで1番目のアクションメソッドを使用してHTMLをレンダリングしたいと思います。
物事の壮大なスキームでは、標準のHTTPポストだけでなく、ファサードアクションメソッド(2番目のアクションメソッド)を介したAJAXリクエストによっても取得可能なActionResult(アクションメソッドから生成された)が必要です。このように、私は開発者として、HTTPPostまたはAJAXを使用してページのレンダリングを取得することを選択できます。
申し訳ありませんが、この更新をできるだけ短くしようとしました。ありがとう。
c# - ActionResult から ViewModel を取得できますか?
ここで繰り返しを避けようとしています。変更が許可されていない基本クラスのコントローラーにアクションがあります。アクションでいくつかのチェックを行い、基本クラスのアクションを呼び出し、レンダリングの前に何らかの方法で結果を変更したいと考えています。しかし、私がしなければならないことの一部には、 のいくつかのプロパティを変更することが含まれてViewModel
おり、基本クラスは を返しますActionResult
。ViewModel
からを取得する方法が見当たらないActionResult
ので、カスタム メソッドを作成する必要があるかもしれません。そのほとんどは、基本クラスが行っていることを模倣するだけです。私はこれをしないことを強く望みます。助言がありますか?
c# - MVC ユーザー形式の出力
私はC#MVCプロジェクトを持っており、ユーザーがデータを出力する方法を選択できるようにしています(つまり、速度はkmh / mphで、時間はCST、ESTtなどで、距離はKM、マイル、メートル、ヘクターなどで) .)。毎回データベースに戻って設定を取得するのではなく、ログオン時に暗号化された Cookie のユーザー データ部分に設定します。サービスが BLL に実装され、モデルが BOL に定義されているサービス リポジトリ パターンも使用しています。また、データを JsonResults として返しています (NewtonSoft ライブラリを使用)。このユニット設定情報をビジネス ロジック層に渡さずに、データをユーザー指定の型に変換するための最善の戦略 (場所と方法) は何ですか? 私は当初、customAttributes を使用し、リフレクションを使用して Json 文字列を生成する独自の CustomJsonResult actionResult を作成することを考えていました。しかし、これには独自のオブジェクト トラバーサル アルゴリズムが必要です。私の主な関心事は、アプリをステートレスにしたいということです。