C#에서 폼 인증을 사용하고 Active Directory가 멤버 자격 공급자 (기존 uid/pwd를 사용하여 로그인 한 사용자)입니다. 그러나 역할을 aspnet_Roles (응용 프로그램에서 만든 기본 테이블)에서 제공하고 싶습니다. 내 Web.config 있음 :이 노드에 대한 기본 설정으로.NerdDinner와 같은 확인란에서 DB에서 사용할 수있는 역할 목록을 국가별로 표시합니다.
NerdDinner 샘플 응용 프로그램 PDF를 성공적으로 따라 갔고 내가 배운 것을 사용하고 싶습니다. 내 응용 프로그램에서는 NerdDinner와 같은 저장소 패턴을 사용하고 있습니다. NerdDinner에서는 Helper 메서드를 사용하여 DropDownList를 채우는 방법을 보여줍니다. 나는 같은 것을하고 싶다. 그러나 국가와 DropDown 대신에 테이블에서 역할을 가져 와서 체크 박스를 채우고 싶다. 내 UsersController.cs에서
내가 가진 :
내보기에서//
// ViewModel Classes
public class UserFormViewModel
{
// properties
public User User { get; private set; }
public SelectList Roles { get; private set; }
// Constructor
public UserFormViewModel(User user)
{
User = user;
Roles = new SelectList(Roles.All,); //this is where I have problems
}
}
내가 가지고있는 (물론 작동하지 않을 것이다) :
<ul>
<% foreach (var role in Roles as IEnumerable<SelectListItem>)) { %>
<li><%= Html.CheckBox(role.ToString())%> <%= role.ToString() %></li>
<% } %>
</ul>
P.S.을 나는 .NET에 초보자이지만, 나는 그것을 좋아한다! 내가 틀렸다면 나를 정정하십시오. 그러나이 문제는 콜렉션과 타입 정의와 관련이 있다고 생각합니까?
또한 저는 ASP.NET 구성 도구를 사용하여 역할과 사용자를 추가하는 것에 익숙하지만 사용자 지정 사용자 관리 섹션을 만들고 싶습니다.
이봐 모프 내가 믿는이 될 것이다 : <% = Html.CheckBox (role.ToString(), Roles.IsUserInRole (Model.User.UserName, role.ToString())) %> 어떻게 루프를 시작할 것인가? 나는 시도하고있다 : <% foreach (varn role in IEnumerable) {%>,하지만 작동하지 않는다. –
robnardo