2012-10-20 5 views
5

(내가 MVC 면도기와 혼동하지 않도록하십시오, 순수한 SS 프로젝트에 대해 이야기하고있다)ServiceStack는 면도기보기

우리가 어떻게 인증을 보거나 SS 면도기의 방문을 제한 할 수있는 인증을 넣어?

즉, SS Razor에서 사용자 세션 및 인증 코드를 어떻게 호출합니까?

나는 이런 식으로 뭔가를 할 :

@inherits ViewPage 
@Authenticate(RedirectUrl = "/Login") 

<div>Hello @UserSession.UserName</div> 
<div>You are in the secured area now</div> 

답변

3

나는 SS 면도기 페이지에서 직접이 작업을 수행하기 위해 어떤 방법을 잘 모르는 것 같아요. 그러나 동일한 딜레마가 있었을 때 대신 페이지를 제공하는 서비스를 작성하여 해결했습니다. 그렇게하면 Authorize 속성을 사용하여 페이지의 서비스를 꾸밀 수 있으며 사용자가 인증되지 않은 경우 로그인 페이지로 리디렉션됩니다.

[Authorize] 
public class MyPageService : IService<MyRequestDTO> 
{ 
    public object Execute(MyRequestDTO request) 
    { 
     ... 
     return new MyPageViewModel(); 
    } 
} 

면도기 페이지에서 현재 세션을 검색하려면 GetSession<T>을 사용할 수 있습니다.

강점 형 뷰를 제공하고 서비스에서 뷰에 대한 데이터를 제공 할 수 있다는 또 다른 이점이 있습니다.

@inherits ViewPage<MyPageViewModel> 
+0

먼저 답장을 보내 주셔서 감사합니다. "서비스 인터페이스를 사용하라"는 말은 "AuthenticateService", "MyService"와 같은 기본 클래스를 상속 받는다는 것을 의미합니다. MyService : AuthenticateService, AuthenticateResponse : IhasResponseStatus, MyResponse : AuthenticateResponse ... 그런가요? – Tom

+0

@Tom, 나쁜 말씨를 사용했습니다. 내가 의미했던 것은 서비스를 만드는 것이 었습니다. 나는 그 대답을 편집했다. – Ostemar

+0

감사합니다. 이제 이해가된다. – Tom

관련 문제