使用ServiceStack的AuthService与Controller和AuthorizeAttribute

时间:2012-06-27 01:02:25

标签: asp.net-mvc authentication servicestack

没有简单的ServiceStack示例作为经典的ASP.NET MVC。 AppHarbor和SocialBootStrap api都基于SinglePage Application。如何使用Servicestack的身份验证实现经典的Asp.net MVC应用程序。

我已将AuthService属性添加到BaseController(Autowired)。然后我在实现时得到了奇怪的“对象引用”异常。 (AuthService行135 base.RequestContext为null)

为什么我收到此错误? 或任何人都可以发送简单的用法(与Asp.net Mvc会员入门者一样)

1 个答案:

答案 0 :(得分:1)

使用RequestContext的服务需要注入当前的请求上下文,例如:

authService.RequestContext = new HttpRequestContext(
    HttpContext.Current.Request.ToRequest(),
    HttpContext.Current.Response.ToResponse(),
    null
);

这使用SessionExtensions.cs中的扩展方法。

您还需要解决来自IOC的任何服务 - 这是sharing functionality between ServiceStack and MVC的一个很好的例子。