問題タブ [asp.net-mvc-2]
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.
asp.net-mvc-2 - ASP.NETMVCの「管理者」アプリケーションのサイトナビゲーション
ASP.NETMVCアプリケーション用に「Admin」というエリアプロジェクトを作成しました。
これには、ユーザーがページを追加/削除できるサイトの管理セクションのすべてのロジックが含まれます。
上部には、ユーザーが管理できるメニューがあります。(例:「コンテンツ」、「ユーザー」など)
これらのそれぞれについて、コントローラー('ContentController'、'UsersController'など)を作成しています。
さまざまなアプローチがあるように思われるので、ナビゲーションをどのように設定するのか疑問に思っています。
1つのアプローチは、MvcSiteMapを使用することです。これには、「。sitemap」ファイルを作成し、「MvcSiteMapNode」属性を使用してコントローラーのアクションを装飾することが含まれます。
上記の問題は、実装が複雑なことです(ASP.NET MVCでのAreaの動作方法のため、特にAreaプロジェクトでは)。それもやり過ぎのようです。
私は別の方法を考え出しました。それは、各コントローラーを独自の属性で装飾することです。次に、リフレクションを使用してすべてのコントローラーをループし、その属性を持つコントローラーを選択してナビゲーションメニューに追加することにより、ナビゲーションをレンダリングするヘルパーメソッドがあります。
上記の方法についてどう思いますか?これを行うさらに簡単な方法を考えられますか?
asp.net-mvc-2 - ASP.NET-MVC2プレビュー1:重大な変更はありますか?
- 私はスティーブン・サンダーソンの「ProASP.NETMVCFramework」の本をフォローしていました。
- 132ページで、作成者の推奨に従って、ASP.NET MVC Futuresアセンブリをダウンロードし、MVCプロジェクトに追加しました。
- 次に、作成者の励ましなしに、ASP.NET MVC2 Preview 1 dllをダウンロードしてインストールし、プロジェクトに組み込みました。
- これで、Webサイトをロードできなくなりました。
- つまり、Visual StudioでF5キーを押すと、このエラーが発生します。
振り返ってみると、ASP.NETMVC2プレビュー1が付加的なものにすぎないと想定するのは本当に悪い考えだったと思います。でも、他の人にも量ってもらいたいです。
ASP.NET MVC 2 Preview 1の重大な変更に気付いた人はいますか?
また-CastleWindsorに影響を与える変更に気付いた人はいますか?
また、IIS6とIIS7の影響に注意する必要があるかどうかをお知らせください。
asp.net-mvc - ASP.NET MVC 2 Preview 1 - StructureMap Controller Factory のコンパイルに関する問題
依存性注入に StructureMap を使用するプロジェクトがあります。プロジェクトは MVC プロジェクトとして正常にコンパイルされますが、すべてを MVC2 プロジェクトに移動した後、次のエラーが発生します。
Test.Web.Controllers.StructureMapControllerFactory.GetControllerInstance(System.Type)': C:\Test\Web\Controllers\StructureMapControllerFactory.cs 11 40 Test.Web をオーバーライドする適切なメソッドが見つかりません
ここに私の StructureMapControllerFactory があります:
この問題に半関連する投稿を 1 つ見つけましたが、問題を解決する方法についての洞察は得られませんでした: MVC 2 プレビュー 1 - コントローラー内のパラメーターを持つメソッドの読み込みに失敗しました
明らかに、1.0 から 2.0 への進行からの変更を見逃しているに違いありませんが、何が変更されたのかはわかりません。どんな助けでも大歓迎です。
asp.net-mvc - ASP.NETMVC2プレビュー1-複雑なモデルオブジェクトを使用したDataAnnotation検証
モデルに独自の検証を処理させる機能により、MVC2プレビューリリースで遊び始めることができました。これまでのところ、検証スキームの単純さが気に入っています。しかし、私は障害にぶつかりました。この検証スタイルは、単純なビューモデルオブジェクトに対して適切に機能します。たとえば、carという名前のモデルオブジェクトがあり、新しい車を作成するためのビューを作成しようとしている場合、次のようになります。
- - -モデル - - - -
- - -コントローラ - - - - -
- - - -意見 - - - - - - -
これは魅力のように機能します。しかし、私のすべてのビュー、またはそのことに関するモデルオブジェクトが単純なわけではありません。私は次のような車のモデルオブジェクトを持っているかもしれません:
- - -モデル - - - -
- - - -意見 - - - - - - -
PaintSchemeプロパティをビューに追加すると、コントローラーアクションに渡された「myCar」オブジェクトに引き継がれません。フォームコレクションからオブジェクトを再構築してからModelStateをチェックすることなく、これを解決する方法はありますか?
asp.net-mvc - ASP.NET MVC ルートを定義する方法
ASP.NET MVC でルートを宣言するさまざまな方法 (1 と 2) をすべて教えていただけないでしょうか。ルートを定義する各方法、その使用方法、および対象となるケースについて説明してください。
ここで収集したいものの例を次に示します。
Directors
= ルートの名前。 Directors/{filter}/{skip}
= URL 定義。 new { controller = "Directors", action = "Index", skip = 0, filter = "" }
= このルートのデフォルト。 new { skip = @"\d+", filter = @"^[a-zA-Z]+.+" }
= このルートの制約。
.net - ASP.NETMVCが呼び出されていないHttpModule
ASP.NET MVC 2 Preview 1アプリケーションで要求ごとのセッションパターンを実装しようとしていますが、これを行うのに役立つIHttpModuleを実装しました。
そして、私はこれをweb.configに入れました:
ただし、「Init!」ページに書き込まれることはありません(組み込みのVS WebサーバーであるCassiniを使用しています)。さらに、SessionModuleにブレークポイントを設定しようとしましたが、ブレークすることはありません。私は何が欠けていますか?
asp.net-mvc-2 - BaseController にコンテンツ アクセス ロジックを配置することは良い考えですか?
私は ASP.NET MVC アプリケーションを開発しています。このアプリケーションでは、任意のページのコンテンツをデータベースから取得して (存在する場合)、ページに表示できます。
これは、非技術者がソース コード (ビューなど) にアクセスして変更することなくコンテンツを編集できるようにするためです。
私がこれを行っている方法は、各コントローラーがベースコントローラーから派生することです。ベース コントローラーは 'OnActionExecuted' をオーバーロードし、この機会を利用して、現在のアクション/コントローラーに割り当てられているコンテンツを取得します。
アクションが「ContentViewModel」から派生した ViewModel を返す場合、ViewModel の「Text」プロパティにデータベースからのテキストを設定します。
そして、テキストはビューによってレンダリングされます。
このデザインの弱点が見えますか?
基本コントローラーを使用するよりも、ビューから呼び出すコンテンツをプルするための HtmlHelper 拡張機能を使用した方がよいでしょうか?
私がこれを尋ねている理由の 1 つは、独自のベース コントローラーを使用すると、指定されたコントローラーが「System.Web.Mvc.Controller」から直接継承されることを期待しているように見える「Html.RenderAction」の呼び出しに干渉するように見えることです。
c# - ASP.NET MVC-コントローラーコードからの現在のアクション?
これは、最近の別の質問と非常によく似ています。
ASP.NET MVCビューで現在のアクションを返すにはどうすればよいですか?
ただし、コントローラーコード内から現在のアクションの名前を取得したいと思います。
したがって、アクションによって呼び出されている関数のコード内で、現在のアクションの名前の文字列を取得したいと思います。
これは可能ですか?
redirect - RenderAction呼び出し間のViewDataの維持
サイトのすべてのページで、Html.RenderActionを使用して一般的なログインフォームをレンダリングしています。
ユーザーがテキストボックスに詳細を入力して[送信]をクリックすると、ログインを処理するコントローラーにPOSTが実行されます。
無効な電子メールアドレスを入力するなどの間違いを犯した場合、ModelStateにエラーメッセージが表示され、以前のページにリダイレクトされます。
問題は、RenderActionが個別のリクエストとして発生するため、ViewModelが失われることです。
TempDataに入れても、TempDataは個別のリクエストごとにフラッシュされるため、失われます。
連続するHtml.RenderAction呼び出し間でデータを保持する方法はありますか?
そうでない場合、これをハックする方法についての提案はありますか?(データをセッションに入れる必要がありますか?)
c# - ASP.NET MVC 2 DisplayFor()
ASP.NET MVCの新しいバージョンを調べています(まだ見ていない場合は、ここを参照してください)。オブジェクトのコンテンツを表示するのにかなり基本的な問題があります。
私のコントロールには、Person
のビューに渡すタイプのオブジェクトがありますViewData.Model
。これまでのところすべて順調で、表示の準備ができたビューでオブジェクトを抽出できます。しかし、私が得られないHtml.DisplayFor()
のは、データを画面に表示するためにメソッドを呼び出す必要がある方法です。私は次のことを試しました...
しかし、次のメッセージが表示されます。
CS0136:'p'という名前のローカル変数は、'p'とは異なる意味を与えるため、このスコープでは宣言できません。これは、'親または現在の'スコープで他の何かを示すためにすでに使用されています。
私はこれが私がすべきことではないことを知っています-変数を再定義するとこのエラーが発生することは知っていますが、コントローラーからオブジェクトにアクセスする方法がわかりません。だから私の質問は、そのプロパティを表示するためにオブジェクトをビューに渡すにはどうすればよいですか?
NB私は限られた空き時間にこれを読んでいることを付け加えなければなりません、それで私が何か基本的なことを逃した可能性は完全にあります。
TIA