ASP.NET -MVC- 승인되지 않은 모든 사용자를 보여주고 승인을받을 수있는보기를 어떻게 작성합니까?
-
06-07-2019 - |
문제
멤버십 서비스 클래스 에이 코드가 있습니다 (ASP.NET-MVC 샘플 앱에서 가져온)
public MembershipUserCollection GetUnapprovedUsers()
{
MembershipUserCollection users = Membership.GetAllUsers();
MembershipUserCollection unapprovedUsers = new MembershipUserCollection();
foreach (MembershipUser u in users)
{
if (!u.IsApproved)
{
unapprovedUsers.Add(u);
}
}
return unapprovedUsers;
}
이제이 정보 목록을 표시하고 누군가가 컨트롤러로 돌아가서 승인 된 속성을 True로 설정할 사람을 승인 할 수 있도록 견해가 필요합니다.
해결책
컬렉션의 각 멤버에 대한 레이블과 확인란이 포함 된 양식을 생성하는보기를 만듭니다. 확인란의 ID에서 사용자에게 얻을 수 있어야합니다.
http.post 조치 방법에서, 해당 사용자를 승인 할 수있는 설정을 찾으면 세트 확인란을 찾는 제출 된 필드를 반복합니다.
분명히 양식은 각 사용자에 대한 임의의 세부 사항을 표시 할 수 있습니다.
내장 된 제어 헬기를 사용하려면 작업 할 고정 크기 모델이 없기 때문에 좀 더 많은 노력을 기울입니다. 비슷한 것을 달성하기 위해 I :
- 엄청나게 타이핑 된보기를 사용했습니다
- 인구가 많다
ViewData["ids"]
~와 함께IEnumerable<IdType>
(보기가 루프가 될 것입니다) - 인구가 채워진 각 항목에 대해
ViewData["field" + id]
각 필드마다 나는 엔티티에 표시하고있었습니다 - 뷰에서 ID를 통해 반복되었습니다
using ViewData["ids"]
필드의 ID로 HTML 도우미를 호출합니다.
(V1, V2에서는 모델 상태를 사용하여 내장 유효성 검사 오류 표시 지원을 사용할 수 있었지만 사용자를 선택하려는 경우 실제로 적용되지 않습니다.)
게시물 처리는 유사했으며 데이터베이스에서 ID 목록을 다시 채우고 통과 된 곳에서 찾아 보았습니다. FormCollection
.
제휴하지 않습니다 StackOverflow