ASP.NET 4.0 및 C#의 새로운 기능입니다. web.sitemap을 사용하여 로그인 한 사용자를 기준으로 숨기기/표시 메뉴 항목을 원한다면 역할과 설정을 사용해야합니다. 그것 web.config에서 ... 나는 그 역할을 얻을 수있는 곳으로 물어보고 싶은가? 당신이 ASP.NET에 정말 처음 사용하는 경우asp.net 4.0을 사용하여 역할을 얻는 방법
답변
if (User.IsInRole("rolename")) {
// what you wan't to do.
}
, 당신은 약 사용자 및 역할을 배울 필요가있다. "로그인"과 같은 표준 요소로 멤버쉽 API를 사용해보십시오. 그 후에 사용자 지정 데이터 구조로 사용자 및 역할 공급자를 작성해야합니다. 그런 다음 @Randolf R-F 문을 사용하십시오.
의견을 보내 주셔서 감사합니다. – student
IPrincipal을 사용하여 역할을 저장해야합니다. 내가 제대로 이해한다면, 당신은 당신이 열려 asp.net 웹 응용 프로그램 프로젝트를 가지고 사용자를 만드는 방법을 알고 싶어한다는 말을
if (User.IsInRole("rolename1")) {
// what you wan't to do.
}
당신이 사용자 역할을 확인할 수 있습니다 다음
GenericIdentity userIdentity = new GenericIdentity((FormsIdentity)HttpContext.Current.User.Identity.Name);
string[] roles = { "rolename1", "rolename2", "rolename3" };
GenericPrincipal userPrincipal = new GenericPrincipal(userIdentity, roles);
Context.User = userPrincipal;
그 (것)들에 역할을 할당하십시오.
현재 web.config가 rolemanager 및 멤버 자격 공급자에 대한 기본 공급자를 사용하도록 구성된 경우 asp.net이 모든 까다로운 작업을 처리합니다. 해야 할 일은 메뉴 바에서 "Project -> ASP.NET Configuration"을 선택하는 것입니다. 그러면 사용자와 역할을 작성한 후이를 할당하는 GUI가 나타납니다. 꽤 자명 한 도구 여야합니다. 그것도 web.config 사용 요구 사항을 충족해야합니다.
당신은 당신이 좋아하는 일을 할 수있는 사용자가 로그온 한 경우 여기에서 위의 제안으로 :
경우 (User.IsInRole ("rolename")) {// 당신이 할 wan't 것. }또는 도구 상자에서 logInView 컨트롤을 사용해보아야합니다. (내가 생각하기에 그렇게 생각합니다.) 이러한 컨트롤을 사용하여 인터넷 검색을 수행하면 온라인에 연결됩니다.
"rolename"을 얻을 수있는 곳을 알고 싶습니다. 아니면 그냥 이름을 써도 될까요? – student
아니요. 사용자가 속한 역할의 역할 이름을 입력합니다. 사이트 구성에서 가져옵니다. 'Website Configuration Manager' 도구를 보시고 그것을 사용하여 여러분의 역할 등을 설정하십시오. –