したがって、私は以下のコードを使用して、初期ロード時にページのいくつかの要素を表示しています。MVCビジネスロジックと表示/ UIロジック
<script type="text/javascript">
$(function(){
@if (ViewBag.PageFunction == "Edit" && Model.ProductType.ProductTypeName == "Book")
{
@:$('#product-isbn').show();
}
@if (ViewBag.PageFunction == "Edit" && Model.HasBulkDiscount == true)
{
@:$('#product-bulk-discount').show();
}
});
</script>
我々は最近、MVCに移動してきたし、私のマネージャーと同僚は、トップ制御構造はビジネスロジックであることを私に言っているが、下の1は、ビジネスロジックではない、と私はビジネスロジックを持つべきではないこと私からしてみれば。
これは私の見解では完全に有効なコードであると私は同意しないと感じます。私は正しいのですか、間違っていますか?
私のマネージャーからも、再利用できないため、@Html.LabelFor()
を私の見解で使用しないでくださいと教えてくれました。ここで私がどのように使用しているのかの例です。
<div class="form-group">
<p>@Html.LabelFor(p => p.ProductName, new { @class = "col-sm-12" })</p>
<div class="col-sm-12">
@Html.TextBoxFor(p => p.ProductName, new { @class = "form-control" })
</div>
</div>
私もその推論を理解しているかどうかわかりません。
あなたの使い方は正しいですし、あなたのテキストボックスに関連付けられた '
ええ、わかりません。彼は私に尋ねました。「@ Html.Labelforを使うのではなく、実際のラベルをタイプするだけではどうですか?これをモデルに結びつけて説明しようとしましたが、複数の場所でこのラベルを使用している場合は、モデルのDisplayName属性を更新するだけで、使用されているどこでも更新されます。彼はこれまでRazorを使用していなかったので、Razorを使うのは本当に嫌悪感を持っているようだ。 – Namrehs
ビュー内でHtmlHelperメソッドを使用していないのは、IMHOです。ナンセンスです。彼らはあなたがhtmlが常に正しく生成されることを保証します。 –