2011-06-24 12 views
0

を使用しているから、私は、web.configファイルで指定されたクラス1のpageBaseTypeを持つビュー]フォルダを持っています。私のAreas/MyProject/Viewsフォルダには、pageBaseType Class2を指定するweb.configがあります。 MyProjectはclass1と互換性がありません。MVC3防ぐエディタテンプレート

MyProjectを除いシステムで他のどこでも必要との見解/共有/ EditorTemplates/String.cshtmlファイルがあります。 String.cshtmlはClass1を使用するため、MyProjectではエラーが発生しません。

MyProjectとでEditorTemplatesフォルダの継承を防止するための良い方法はありますか?私はEditorTemplatesの内容全体をMyProject/Views/Sharedに貼り付けることができますが、それを停止しますが、新しいcshtmlをEditorTemplatesに追加するたびにファイルをコピーする必要はありません。

答えて

1

それはあなたの文字列エディタテンプレートがないことは何ですか?

あなたは[UIHint]属性または[データ型]属性を使用できるモデルプロパティの特定のテンプレートをレンダリングする必要がある場合。これをグローバルに使用するつもりがない場合は、これを行う方がよいでしょう。テンプレート名を一意のものに変更する必要があります。 MyStringTemplate.cshtml。あなたがいないグローバルであることをエディタテンプレートをしたいが、ことをあなたのコメントに基づいて

、私の提案は、あなたの意見で@Html.EditorFor(...)を使用し、代わりに明示的に、例えば、フォームフィールドを作成しないことです、あなたの地域でそれらを使用するには@Html.TextboxFor(...)

+0

など、正直なところ、私は、文字列エディタテンプレートが行うことになっているものかどうか分からないが、小数のためのダース他のテンプレートもあります、日時、ダブルス、私は全体他のを知っていながら、私は、管理者機能に取り組んでいます他の人が作成したコードベースは、これらのテンプレートを使用することになっています。それらを使用することができない唯一の人が不合理に聞こえるときに、これらの属性を常に指定するようにしてください。私は私の管理プロジェクト以外のテンプレートをグローバルとして扱う方法が必要です。 – DMulligan

+0

私は自分の答えを更新しました。私の提案は、デフォルトのエディタテンプレートを使用するつもりではなく、明示的なヘルパーメソッドを使用してフォームを構築する場合、Html.EditorForヘルパーメソッドを使用しないことです。 –

+0

ありがとう、答え、upvoted、私はそれを行うでしょう。それでも私は管理者のEditorTemplatesを無視する方法を見つけることを本当に望んでいました。それははるかに理想的だろう。 – DMulligan

関連する問題