小编der*_*gel的帖子

使用ASP.NET MVC的json请求的401响应代码

如何禁用AJAX/JSON请求的401响应代码(重定向到登录页面)的标准ASP.NET处理?

对于网页来说没关系,但对于AJAX,我需要获得正确的401错误代码而不是好看的302/200用于登录页面.

更新:来自ASP.NET MVC的PM的Phil Haack有几个解决方案 - http://haacked.com/archive/2011/10/04/prevent-forms-authentication-login-page-redirect-when-you-donrsquot -want.aspx

asp.net-mvc

35
推荐指数
3
解决办法
2万
查看次数

注册通用页面基类

我创建自己的通用页面基类:

public abstract class ViewPageBase<TModel> : WebViewPage<TModel>
{
    public ParamBuilder<TModel> Param { get { return new ParamBuilder<TModel>(Model); } }
}
Run Code Online (Sandbox Code Playgroud)

Web.config文件:

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="ViewPageBase">
    <namespaces>
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
    </namespaces>
  </pages>
</system.web.webPages.razor>
Run Code Online (Sandbox Code Playgroud)

此条目导致以下错误:

INCORRECT_TYPE_PARAMETER_NUMBER

表达式树可能不包含动态操作

如何在不使用@inherits每个Razor视图中的关键字的情况下向ASP.NET MVC4注册通用页面基类?

asp.net-mvc resharper web-config razor asp.net-mvc-4

7
推荐指数
1
解决办法
982
查看次数