asp.net-mvc-すべての未承認ユーザーを表示し、承認を許可するビューを作成する方法
-
06-07-2019 - |
質問
iメンバーシップサービスクラスにこのコードがあります(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;
}
iには、この情報のリストを表示し、誰かがそれらを承認できるようにするビューが必要になります。このビューはコントローラーに戻り、IsApprovedプロパティをtrueに設定します。
解決
コレクションの各メンバーのラベルとチェックボックスを含むフォームを生成するビューを作成します。チェックボックスのIDからユーザーに取得できる必要があります。
HTTP.POSTアクションメソッドで、対応するユーザーが承認済みに設定されている場合、送信済みフィールドを反復して設定チェックボックスを探します。
明らかに、フォームは各ユーザーの任意の詳細を表示できます。
組み込みのコントロールヘルパーを使用するには、使用する固定サイズモデルがないため、もう少し手間がかかります。類似のIを実現するには:
- 厳密に型指定されていないビューを使用しました
-
ViewData["ids"]
にIEnumerable<IdType>
が入力されました(ビューはループします) - エンティティに表示されていた各フィールドの
ViewData["field" + id]
が入力された各エントリについて - IDでループされたビュー
using ViewData["ids"]
で、フィールドのIDでHTMLヘルパーを呼び出します。
(V2ではV2でモデル状態を使用したため、組み込みの検証エラー表示サポートを使用できますが、ユーザーを選択するだけの場合は適用されません。)
POST処理は類似しており、データベースからIDリストを再入力し、渡されたFormCollection
で検索します。
所属していません StackOverflow