0

我有一个需要在多个视图中使用的 Helper 方法。为了实现这一点,我尝试实施 Scott Guthrie 在这里展示的方法:http ://weblogs.asp.net/scottgu/archive/2011/05/12/asp-net-mvc-3-and-the -helper-syntax-within-razor.aspx。为了参考,我的辅助方法如下所示:

  @helper MyMethod(string parameter)
  {
    MyNamespace.MyClass.HelperMethod(this.Request, parameter)
  }

如您所见,我需要访问与视图关联的 HttpRequestBase 对象。如果我在 _Layout.cshtml 的顶部定义方法,则代码可以正常工作。但是,我需要在其他视图中使用它。因此,如前所述,我使用了 scottgu 强调的方法。不幸的是,我现在收到一个运行时错误,上面写着:

“CS0026:关键字 'this' 在静态属性、静态方法或静态字段初始值设定项中无效”

我怎样才能克服这个驼峰?

4

1 回答 1

0

如果它是您需要的 HttpRequestBase 对象,请尝试传入HttpContext.Current.Request而不是this.Request.

于 2012-07-22T12:56:33.827 回答