かみそりの構文で.NETビューを掘り下げています。私のコーディング知識のほとんどはjavascriptにあるので、これはおそらく基本的な質問です(または私のアプローチは完全に間違っています!)。私のHTMLでは、テンプレートの上部で宣言された配列に基づいてDNSプリフェッチタグを作成しています。JavaScriptのバックグラウンドが原因でこれに近づいているのかもしれませんが、ビューの1つにプリフェッチタグが必要ない場合は、DNSPrefetch変数の宣言を避けたいと思います。
変数が存在するかどうかをテストし、その結果に基づいてコードを実行するにはどうすればよいですか?try / catchを使用して動作させることができましたが、もっと良い方法があると考えていました。ありがとう!
_Layout(try / catchを使用):
@{
try {
foreach (var dns in ViewBag.DNSPrefetch) {
<link rel="dns-prefetch" href="//@dns" />
}
}
catch{}
}
テンプレートの場合:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
// DNS prefetching for improved performance. More reading: http://html5boilerplate.com/docs/DNS-Prefetching/
string[] DNSArray = { "ajax.googleapis.com", "mpsnare.iesnare.com" };
ViewBag.DNSPrefetch = DNSArray;
}