これが可能かどうかはわかりません。@Helperの内部で@Helperを使用できますか?
Iは、ビュー内および他のビューに@Helper
「Sの束を持っている:
@if (!(Model.Entity == Model.Enum.One))
{
<td>
@ViewHelper1()
</td>
}
else
{
<td>
@ViewHelper1()
</td>
<td>
@ViewHelper1()
</td>
}
:
@helper ViewHelper1()
{
...
}
@helper ViewHelper2()
{
...
}
etc.
私はビューと他のビューで使用される反復コードを有します実際の@ViewHelper1
はもっと複雑なコードを持っていますが、それは重要ではありません(私は思います)。各ビューは@Helper
年代(30+ビュー、10-15 @Helper
のそれぞれ)の数を持っており、<table>
構造が同じであるため
まあ、私はそのApp_Code
で@Helper
の作成に取り掛かるためにどのように思っていました<td>
構造体をカプセル化し、ビューの@Helper
を渡します。
は言う:それは私がちょうど構文で助けを必要であれば
@Table(HelperView1)
:
@helper Table(...)
{
...
}
などのビューでそれを呼び出してかどうかそれがことも可能だと
。いつもと非常に高く評価されています。
感謝を。私は 'Func'を見つけ出そうとしていて、愚かにも私は2つのパラメータを必要としなかったことに気付かなかった。 +1のコードサンプル。 –
REMESQ
フォローアップの質問: 'Appecode'のファイルに' @helper Table(...) 'を入れて、' if'文を通して 'Model.Entity'を呼び出すと、私は明らかに" Can notヌル参照に対して実行時バインディングを実行する "。私はなぜそのエラーを得るのか理解していますが、そのエラーを回避する方法はありますか?それとも限界ですか?ありがとうございました。 – REMESQ
これは 'App_Code'にヘルパーを置くことの限界だと思うのですが、モデルを' @helper Table(動的モデル、Func otherHelper) 'のように' Table'に別のパラメータで渡すことです。 –
nemesv