2011-06-04 66 views
1

我刚刚在我的项目中包含了T4MVC,并遇到了一个问题。我通过隐藏文本字段将数据传递给我的javascript,我需要能够传递控制器的名称和他们的动作。下面是我有:带ActionNames的T4MVC

<input type="hidden" id="logErrorUrl" name="logErrorUrl" value="@Url.Action("LogJavaScriptError", "Error") /> 

我希望能够做到:

<input type="hidden" id="logErrorUrl" name="logErrorUrl" value="@Url.Action(MVC.Error.LogJavaScriptError("")) /> 

出于某种原因,这是行不通的。我在想,因为LogJavascriptError没有返回一个ActionResult。 FYI LogJavaScriptError也接受一个字符串,但我真的只想要操作的名称。我也试过@ MVC.Error.ActionNames.LogJavaScriptError,但它不会再显示,因为它不返回ActionResult?

回答

1

T4MVC仅适用于返回ActionResult的操作方法。如果你的方法不需要返回任何东西,那么推荐的做法是返回一个EmptyResult,例如

public virtual ActionResult SomeAction() { 
     // Do stuff 

     return new EmptyResult(); 
    }