問題タブ [asp.net-mvc-areas]
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.
.net - ASP.NET MVC 2 でネストされた領域は可能ですか?
ネストされた領域を持つプロジェクト構造を作成したいと考えています。たとえば、「ホーム」エリアがあり、その下に独自のルート登録を処理する「ニュース」エリアが必要であり、ルートが「ニュース」エリアのコントローラーを指しているときに適切にビューを検索します。「ニュース」エリア名を単に「ニュース」ではなく「ホーム/ニュース」に変更すると、適切なビューが見つかります。メインの Global.asax.cs で、すべての領域 (「ホーム」と「ニュース」) をインスタンス化し、それらを個別に登録します。 " 範囲)。
他の誰かが同様のことを試しましたか? これは重大なハッキングですか、それとも安定した長期的な解決策になる可能性がありますか? アドバイスをいただければ幸いです。
asp.net-mvc - ASP.NET MVC ActionLink エリア外
MVC での単純な作業は、時には難しい課題になります。
さて、私は管理者と呼ばれるエリアを持っています。このエリアの共有のディレクトリ内に「禁止」という名前のページがあります。
目標は単純です。管理領域の外にあるホームページに戻るためのリンクを生成する Html.ActionLink を作成する必要があります。
だから私は試してみて、<%= Html.ActionLink("Back","Index",new {controller="Home"})%>
その生成:
それは間違っている!私はしたい:
エリアからデフォルトのコントローラー構造へのリンクを作成するにはどうすればよいですか?
asp.net-mvc-2 - エリア内のカスタム ルーティング
私は、メンバーと呼ばれるエリアと、MembersAreaRegistration ファイルに次の登録済みルートを持っています。
次の URL をマップできるようにしたい:
このルート登録により、すべてが正常に機能します。ただし、次の URL を追加しました。
エラーが発生しました:
「パラメーター ディクショナリには、'MyProject.Web.Mvc.Areas.Members. Controllers.ProfileController'. オプションのパラメーターは、参照型または null 許容型であるか、オプションのパラメーターとして宣言する必要があります。"
URLもお願いします
このすべての URL が正しく機能するようにするには、何を変更すればよいですか?
asp.net - 既存の Web アプリに「エリア」を追加したいのですが、これによってどのような影響がありますか?
既存の asp.net MVC アプリがあり、今すぐ「エリア」を追加したいと考えています。
これの影響は何ですか?落とし穴はありますか?
asp.net-mvc - ASP.Net MVC 2 エリア: 部分ビュー '...' が見つかりませんでした
最近、プロジェクトを MVC 2 にアップグレードしました。エリアを使用したいのですが、問題があります。
新しいエリアを作成し、コントローラーをセットアップし、ルートを構成し、正しい場所にビューを作成しました。コードを実行すると、ルートが正常に検出されてコントローラーにヒットしますが、ビューをレンダリングしようとすると例外が発生します。
Web フォーム ビュー エンジンは、ビューの [領域] セクションを参照していないようです。表示されるエラーは次のとおりです。
それがいつあるべきか:
これは、まだ何らかの形で MVC 1 dll を使用していることを示していますが、注意深く調べたところ、MVC の V2 への参照しか見つかりませんでした (サードパーティの DLL である xVal に V1 参照がありましたが、それを修正しても問題は解決しませんでした)。違い)。
アップグレードを行ったときに何かを見逃したか、私たちが経験している問題に一致するものがウェブ上にないように見えるため、異常なエッジケースが発生したことしか想像できません.
この問題を解決するのに役立つ可能性のあるものは何ですか?
提供されたヘルプに事前に感謝します。乾杯、ザック
asp.net-mvc - Asp.Net MVC 仮想領域
そのようなことはありますか?
同じソリューション内に 2 つのプロジェクトがあります。
Visual Studio 内でソリューションを実行すると、localhost の 2 つの個別のインスタンスが起動されます。
プロジェクト foo はhttp://localhost:3091で入手できます
と
プロジェクトバーはhttp://localhost:3094で利用できます
たとえば、foo 内のプロジェクト バーにアクセスしたい: http://localhost:3091/bar/
エリアに関する私の調査から、bar プロジェクトを foo プロジェクト内のエリアとして再作成する必要があるようです。
たとえば、エリア内で再作成することなく仮想エリアでこれを行う方法はありますか?
これは可能ですか?そうでない場合、これを達成する正しい方法は何ですか?
c# - 管理サブサイトを使用したルーティングの正しいプロセス
最初のAsp.NetMVC2サイトを構築していますが、現在、サイトに/Admin領域を追加しようとしています。
この領域をメインのユーザーセットに表示したくないので、http:// Intranet/Adminと入力した場合にのみアクセスできます。
私が持っているのは通常のユーザー用のNewsControllerですが、Admin NewsControllerも必要であり、ビューを追加したときに正しい場所に配置されるようにクラス階層とフォルダーを設定する方法がわかりません。
Global.Asax.cs内に追加しましたが、ルートは正しく解決されます。
そして、私が設定したフォルダ階層で
コントローラーで
私が直面している問題は、インデックスのadmin / NewsController.csにアクセスしてビューを追加すると、/ Admin / News/Index.aspxではなく/News/Index.aspxに作成しようとすることです。
これは私の管理者ニュースコントローラーのコードですコントローラー/管理者->追加->コントローラー
間違っていることはありますか、またはビューを追加するときに/ Admin/{area}ディレクトリに作成されるように何を変更する必要がありますか。
asp.net-mvc - Asp.Net MVC Ninject とエリア
依存性注入に Ninject を使用するサイトがあり、次のように Bootstrapper クラス内で Routing を定義しています。
プロジェクトにエリアを追加しましたが、デフォルトの AdminAreaRegistration がルートを登録していません
エリアを Ninject に登録する場所または方法を教えてください。
asp.net-mvc-2 - MVC 2.0 - 共有コントロールを使用した URL に基づく異なるビュー
2 つのマスター ページがあります。1 つは、通常のスタンドアロン Web サイトに表示されることを目的としています。もう 1 つは、外部サイトで Iframe として使用されます。
http://example.com/home/indexで通常のページを表示し、 http : //example.com/framed/home/index で iframe バージョンを表示できるようにしたい
ロジックを複製する必要がないように、1 つのコントローラーにポストバックするコントロールが必要なため、通常バージョンと iframe バージョンの両方で使用できる必要があります。
私の問題は、エリアを使用しようとすると、デフォルトの URL で正しく動作させることができないことです。また、構造マップの複雑さが追加されました。/area/controller/action を押してみると、
IControllerFactory 'MySite.Web.Code.IoC.StructureMapControllerFactory' は、'MyArea' という名前のコントローラーを返しませんでした。
この種のセットアップを機能させる方法を知っている人はいますか? 実際に私が行っているのは、/Framed/controller/action がある場合は 1 つのビュー セットを表示し、/framed がない場合は別のビュー セットを表示しようとすることだけです。エリアは行くべき道だと思っていましたが、そうではないかもしれません。
c# - MVC 2.0、StructureMap、エリア、およびコントローラー名の重複
少し問題があります。Framed という領域があります。このエリアにはホームコントローラーがあります。サイトのデフォルトには、ホーム コントローラーもあります。
私がこれでやろうとしているのは、IFrame に適した各コントローラー/アクションのバージョンと、通常のサイトのバージョンを用意することです。私はこれをマスター ページで行います。サイト マスターページには、フレーム バージョンとは異なる多くのコンテンツ プレース ホルダーがあります。このため、マスター ページを入れ替えることはできません。たとえば、http://example.com/Framed/Account/Indexは、外部サイトで使用するアカウント情報のみを含む非常に基本的なバージョンを表示します。 http://example.com/Account/Indexは同じデータを表示しますが、デフォルト サイト内にあります。
私の IoC コンテナーは構造マップです。それで、http ://odetocode.com/Blogs/scott/archive/2009/10/19/mvc-2-areas-and-containers.aspxとhttp://odetocode.com/Blogs/scott/archive/を見つけました2009/10/13/asp-net-mvc2-preview-2-areas-and-routes.aspx . これが私の現在のセットアップです。
構造マップ初期化
ここでデバッグ中に見つかった問題は、コントローラーが同じ名前 (HomeController) を持っているため、最初のコントローラーのみが登録され、これがデフォルトのホーム コントローラーであるということです。すべてのコントローラーが登録されるように、クリエイティブになり、名前空間を追加しました。
デフォルトルート
エリアルート
Phil Haackの推奨に従って、名前空間を 4 番目のパラメーターとして使用しています。
初期化の順序を証明するためだけに、アプリの開始
コントローラーファクトリー
そのため、/Home/Index を押すと、正しいコントローラー タイプが渡されます。/Framed/Home/Index をヒットすると、controllerType が null になり、コントローラーが返されないためエラーになります。
MVC が私の領域を完全に無視しているかのようです。何が起きてる?私は何を間違っていますか?