Dot-Net

Razor RTM 中的聲明性輔助方法

  • July 29, 2011

我通過他的部落格看到了 Scott Guthrie 關於輔助方法的文章。

具體來說:

我看到一堆關於缺少輔助方法的 RC 版本的 MVC 3 文章…我看到對它的語法支持 ( @helper) 被突出顯示,但我有這個/Views/Helpers/SomeHelper.cshtml(定義為部分視圖):

@helper SomeHelper(string text)
{
   if (text != null)
   {
       <text>
           @text
       </text>
   }
   else
   {
       <text>
           Unknown
       </text> 
   }
}

我這樣使用它:

<div>
Helper with Text:
@SomeHelper("This is not null text.")
</div>

但是我得到 SomeHelper 沒有定義….那麼我在哪裡搞砸了?我需要做些什麼來將這些視圖註冊為助手?

謝謝。

我通過App_Code在我的項目中創建一個Helpers.cshtml文件夾,然後在該文件夾中創建一個文件來完成此操作。

然後,在.cshtml視圖中,使用:

@Helpers.SomeHelper("This is not null text.")

這是我發現在整個 Web 項目中創建共享聲明性幫助器方法的唯一方法。如果還有其他人,我想听聽他們的情況。

引用自:https://stackoverflow.com/questions/4988135