これは確かに簡単な質問ですが、これを理解するのに苦労しています。
こんなのやりたい……。
@(string.IsNullOrEmpty(Model.CustomerUrl) ? "" : <a href="@Model.CustomerUrl">Click me</a>)
このスニペットは機能しません。
HTML とカミソリの構文が混在していて、タグの属性に引用符が含まれているため、わかりにくくなっています。
この種のものを理解することは本当に私をつまずかせることを除いて、私はカミソリが大好きです.
CustomerUrl が null または空の場合、次をまったくレンダリングしないようにしたいと思います...
<p class="customerLink links"><a href="@Model.CustomerUrl">@Model.CustomerName</a></p>
編集
これはまだ私にとってはうまくいきません...しかし、提案に感謝します。
私の問題は、上記のコードが Razor コード ブロックに既にあることです。ここに私が理解できない私の実際のコードがあります...
編集番号2 - 次のコードが機能するようになりました
@if (Model.Count() > 0)
{
foreach (var partner in Model)
{
<li>
@Html.ActionLink(@partner.CustomerName, "Details", "Customer", new { id = Customer.AID }, null)<br />
@partner.Street<br />
//this is what i cannot figure out!!
@if(!string.IsNullOrEmpty(partner.Phone))
{
@partner.Phone@:<br />
}
@partner.Distance<br />
</li>
}
}
ネストされたブロック (if) の前に @ 記号を付けました。次に、
@ で区切らなければならなかったマークアップ: すると、うまくいきました。
ネストされたカミソリ コード ブロックを使用しようとしたとき、@ を前に付けたためにコンパイラ エラーが発生したようです。だから今、私はこれまで以上に混乱しています。
実際... @partner.Phone をこのように引用符で囲もうとすると..."@partner.Phone"@:</ br>
別のコンパイラ エラーが発生します。Razor は機能するときは優れていますが、機能しないときは非常に混乱します。
セス