これを実現する方法の1つは、カスタムビューエンジンを作成することです。あなたは、モデルは、あなたは、単に変更することができます問題になることはありませんコントローラ/メンバー内のファイル
- MembershipController
- LogOnView
- LogOnModel
- RegisterView
- RegisterModel
の下に、これらすべてを置くことができますモデルの名前空間、唯一の問題はビューです。このために、カスタムビューエンジンを作成して、mvcアプリケーションがビューファイルの物理的な位置を次のように知るようにします。 global.asax.csで
public class CustomViewEngine : RazorViewEngine
{
public CustomViewEngine()
{
ViewLocationFormats = new[]
{
"~/Controllers/{1}/{0}.cshtml",
};
}
}
(のApplication_StartでViewEngineを追加)次のコード
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new CustomViewEngine());
含むことによってまたに応じてレイアウト属性を更新するなど、さまざまな他の要因の世話をする必要がありますここで_Layout.cshtmlを配置します。
領域を使用している場合は、AreaViewLocationFormats文字列配列も追加します。
FileExists、CreateView、CreatePartialViewなどのメソッドの一部をオーバーライドすることで、さらにカスタマイズすることができます。
注:viewsフォルダのweb.configをメンバシップコントローラにコピーすることを忘れないでください。そうでなければ、アプリケーションは必要なmvcネームスペースを見つけず、ビューバック、モデルなどのシンボルを見つけません。
MVCエリアに興味があると思います:http://msdn.microsoft.com/en-us/library/ ee671793.aspx –
@カーク私はMVC領域を使用した後でも、彼がブラウズする必要がある各領域にはまだコントローラ/ビュー/モデルがあります。 –
Resharperをインストールします。コントローラーやビューなど(アイデアのキーバインド付き)に行くには、Ctrl-Nを押して名前を入力してから、リストから選択してください。あなたのツールは人生を楽にします。残念ながらスクリプトではうまくいきません。 -/ – Sean