2016-07-21 3 views
1

私はアプリケーションを分割する領域を使用していますが、EditorTemplateを含むすべてが期待通りに機能します。TemplateEditorのタグヘルパーは、TemplateEditorの場所によってバインドされません。

\Areas\Area1\Controllers\TestController.cs 
\Areas\Area1\Views\Test\Index.cshtml 
\Areas\Area1\Views\Shared\EditorTemplates\MyEditor.cshtml 

私はMyViewIndex.cshtml内EditorTemplate(MyEditor.cshtml)を使用していると私は上記の場所に置いたときに、それが正常に動作します:私のプロジェクトは、このようなセットアップ(MyEditor.cshtmlの場所に注意してください)であるときに動作します。

私は、MVCはそれを見つけたが、タグヘルパーをレンダリングしていない次の場所にMyEditor.cshtmlを移動することができます。

\Views\Shared\EditorTemplates\MyEditor.cshtml 

ので、代わりにこのタグヘルパー...

<input asp-for="Hello1" type="text" /> 

。 ..このようにレンダリング:

<input value="ABC" type="text" id="Hello1" name="Hello1" /> 

...それは決してproceされなかったようにブラウザに出力されますssed:ビュー内

<input asp-for="Hello1" type="text" /> 

を私が持っているIndex.cshtml:

@Html.EditorFor(model => model.Hello1, "MyEditor") 

インサイドMyEditor.cshtml私が持っている:

Hello<br/> 
@DateTime.Now<br/> 
<input asp-for="OneEditorProperty1" type="text" /> 

私はそれが出力しているため、それは、「エディタのテンプレートを見つけることを知っていますこんにちは "と私はDateTime.Now値が表示されるので、それはある程度処理していることを知っています。何らかの理由で入力タグヘルパーが処理されません。

答えて

0

私の質問には、@ addTagHelperディレクティブがある場所がありません。

私はそれらをここに持っていた:

Areas\Area1\Views\_ViewImports.cshtml 

しかし、ここにいないの:

Views\_ViewImports.cshtml 

私は、私もこれを持っていたことを忘れ - このことを指摘しhttps://github.com/aspnetでオーバー@dougbuのおかげで。

関連する問題