ASP.NET Webサイト管理ツールを使用せずに、「ロールを有効/無効にする」または「ロールを作成または管理する」方法を教えてください。私はこのツールを使用してMVC3 Webアプリケーションのユーザ/ユーザの管理/ユーザの有効化などを作成することができます。しかし、私はこのツールを管理者に "ロールの作成/管理"のために提供したいと思いますし、ワークステーションにVisual Studioをインストールしていません。.NET Webサイト管理ツール
答えて
をXMLを編集している場合でも、ちょうど役割を編集すると、あなたはあなたのコントローラ内部からの役割への容易なアクセスを持っている、そのような大したことではありませんアクション+ビューのカップルはあなた自身のツールを作ることができます。
そしてもちろん、あなたはアクセスを制限することになるでしょう:
[Authorize(Roles = "Admin, Super User")]
public class RolesController : Controller
{
}
ASP.NETメンバーシッププロバイダを使用する独自の管理ツールを作成する必要があります。
また、http://websitemanager.codeplex.com/のオープンソースプロジェクトが役立つ場合があります。
私はHenkの推奨する管理ページを作成しようとします。ありがとうございました! – rk1962
ウェブサイトの設定ファイルを編集する方法を教えてください。あなただけのコントローラとAを作成するのであれば
if (!Roles.RoleExists("Guest"))
Roles.CreateRole("Guest");
Roles.AddUserToRole(userName, "Guest");
:彼らは直接
これは私が編集ユーザーとロールを扱っています方法です。
私のコントローラには、次のコードがあります。あなたがそれを必要としないパートナーIListに気にしないでください。あなたは、あなたのAccountController内のユーザをモデル化したい(あなたのユーザアカウントにこれを使っていると仮定して)、ロールを使ってモデル化したいと思うだろう。
public ActionResult Edit(string UserName)
{
IList<Partner> partners = r.ListPartners();
MembershipUser user = Membership.GetUser(UserName);
UserProfile profile = UserProfile.GetProfile(user.UserName);
User model = new User();
model.UserName = user.UserName;
model.Email = user.Email;
model.ActiveAccount = user.IsApproved;
model.PartnerID = profile.PartnerID;
model.IsAdministrator = Roles.IsUserInRole(user.UserName, "Administrator");
model.IsApprover = Roles.IsUserInRole(user.UserName, "Approver");
model.IsContributor = Roles.IsUserInRole(user.UserName, "Contributor");
model.IsReporter = Roles.IsUserInRole(user.UserName, "Reporter");
IList<Partner> p = r.ListPartners();
ViewBag.Partners = new SelectList(p.AsEnumerable(), "PartnerID", "Name", model.PartnerID);
return View(model);
}
私のポストは
//
// POST: /Account/Edit
[HttpPost]
public ActionResult Edit(User model)
{
MembershipUser user = Membership.GetUser(model.UserName);
UserProfile profile = UserProfile.GetProfile(model.UserName);
user.Email = model.Email;
user.IsApproved = model.ActiveAccount;
profile.PartnerID = model.PartnerID;
#region If Else Block for Role
if (Roles.IsUserInRole(model.UserName, "Administrator") && !model.IsAdministrator)
{
Roles.RemoveUserFromRole(model.UserName, "Administrator");
}
else if (!Roles.IsUserInRole(model.UserName,"Administrator") && model.IsAdministrator)
{
Roles.AddUserToRole(model.UserName, "Administrator");
}
if (Roles.IsUserInRole(model.UserName, "Reporter") && !model.IsReporter)
{
Roles.RemoveUserFromRole(model.UserName, "Reporter");
}
else if (!Roles.IsUserInRole(model.UserName, "Reporter") && model.IsReporter)
{
Roles.AddUserToRole(model.UserName, "Reporter");
}
if (Roles.IsUserInRole(model.UserName, "Contributor") && !model.IsContributor)
{
Roles.RemoveUserFromRole(model.UserName, "Contributor");
}
else if (!Roles.IsUserInRole(model.UserName, "Contributor") && model.IsContributor)
{
Roles.AddUserToRole(model.UserName, "Contributor");
}
if (Roles.IsUserInRole(model.UserName, "Approver") && !model.IsApprover)
{
Roles.RemoveUserFromRole(model.UserName, "Approver");
}
else if (!Roles.IsUserInRole(model.UserName, "Approver") && model.IsApprover)
{
Roles.AddUserToRole(model.UserName, "Approver");
}
#endregion
Membership.UpdateUser(user);
return RedirectToAction("ManageUsers", "Account");
}
のように見えますうまくいけば、これはあなたが何をする必要があるかのアイデアを提供します。私はあなたのユーザーモデルでOKを作成することができますと仮定しています。
サンプルコードありがとうございました。 – rk1962
- 1. Webサイト管理ツール
- 2. カスタムメンバーシップ - Webサイト管理ツールのエラー
- 3. WebサイトにASP.NET Webサイト管理ツールを展開する
- 4. ウェブサーバーにWebサイト管理ツール(WSAT)をインストールするには
- 5. Visual Studio 2012のWebサイト管理ツールはどこですか
- 6. セキュリティタブのWebサイト管理ツールでエラーが発生しました
- 7. Webサイト管理ツールと一緒にカスタムメンバーシッププロバイダを使用する
- 8. ASP.NETカスタムロールプロバイダを使用したWebサイト管理ツール
- 9. Webサイトのバージョン管理
- 10. ASP.NET Webサイト管理ツールからWebページのユーザーを一覧表示して管理します
- 11. Silverlightでのユーザー管理、カスタムUIの作成、またはASP.NET Webサイト管理ツールの使用?
- 12. はどのように私は、Webサイト管理ツールにアクセスするには
- 13. Azure AppサービスのWebサイト管理ツール(WSAT)を起動するには?
- 14. ASP.NET MVC 3 Webサイト管理ツールからデータベースを取得します
- 15. アジャイルリリース管理ツール
- 16. Subversion管理ツール
- 17. バージョン管理とテストのWebサイト
- 18. ASP.NET Webサイト内のデータベース管理パネル
- 19. パラメータ完全なWebサイトの管理!
- 20. SVN管理GUIツール
- 21. テストケース管理ツール2017
- 22. VB6コード管理ツール
- 23. ASP.NET管理サイトの広告管理
- 24. 管理サイトに管理コマンドを表示
- 25. Django管理サイトmongodb
- 26. Django管理サイトのDjango管理サイトのdjango-nonrelから
- 27. Asp.net管理ツールの問題
- 28. MongoDBのデータベース管理ツール
- 29. nodejsのバージョン管理ツール
- 30. オープンソースのメタデータ管理ツール
私はあなたの解決策を試みます。ありがとうございました! – rk1962
私はあなたのソリューションを試してみました。どうもありがとうございます! – rk1962
@ rk1962独自のロールマネージャーツールの作成方法に関するコードを共有してください。私はこの答えを私のシードメソッドで使うことができますが、このコードが生産に送られると何が起こるか心配です。 – Komengem