0
我有以下幾點:我可以剃刀語法簡單
@if ((@Model.SeqId != 0) & (Model.SeqId != 1))
{
<text>
window.location.href = "www.stackoverflow.com";
</text>
}
我不知道很多關於剃刀。我能做些什麼來簡化它嗎?
我有以下幾點:我可以剃刀語法簡單
@if ((@Model.SeqId != 0) & (Model.SeqId != 1))
{
<text>
window.location.href = "www.stackoverflow.com";
</text>
}
我不知道很多關於剃刀。我能做些什麼來簡化它嗎?
是的,你可以。我只想對你的視圖模型定義屬性
public bool ShouldRedirectToSO
{
get
{
return (SeqId != 0 && SeqId != 1);
}
}
然後:
<script type="text/javascript">
@if (Model.ShouldRedirectToSO)
{
@:window.location.href = 'http://www.stackoverflow.com';
}
</script>
,或者如果您打算,如果滿足條件立即重定向頁面加載,你也可以從控制器這樣直接:
public ActionResult Foo()
{
var model = ...
if (model.ShouldRedirectToSO)
{
return Redirect("http://www.stackoverflow.com");
}
return View(model);
}
可以選擇小於0嗎?如果沒有,你可以做
@if (Model.SeqId > 1)
{
<text>
window.location.href = "www.stackoverflow.com";
</text>
}
此外,你不需要@代碼塊中的模型。您可能希望使用& &而不是&,因爲只要第一次測試失敗,就會失敗,從而節省幾個CPU週期。
http://msdn.microsoft.com/en-us/library/2a723cdk(v=vs.71).aspx