Попытка добавить продавца к роли продавца, пользователя к роли пользователя

Поэтому я использую три разные роли в своем диспетчере ролей и испытываю трудности, когда использую отдельную страницу регистрации для моего пользователя и одну для моего продавца (то есть по некоторым причинам я не использую страницу регистрации, предоставляемую ASP.NET Identity).

По сути, я хочу, чтобы он функционировал так, что когда продавец создает учетную запись, он добавляется к роли продавца, а когда пользователь создает учетную запись, он добавляется к роли пользователя. Каждый метод регистрации имеет свою отдельную страницу. Поэтому, если я пойму, как это сделать для одного, я смогу понять, как это сделать для другого. Я застрял на этом несколько дней безрезультатно, и поэтому я здесь. Ниже приведен код, который, я думаю, вам может помочь мне.

Merchant Controller (Create class), и да, когда я делаю это, я нахожусь в роли администратора. Торговец будет виден под моей индексной страницей, которая показывает список торговцев, но по какой-то причине присоединить его к MerchantRole просто не нужно!!

     [Authorize(Roles = "Admin")]
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create([Bind(Include = "MerchantID,MerchantName,State,City,StreetAddress,zip,phoneNumber,email, website")] Merchant merchant)
    {

        if (ModelState.IsValid)
        {
            db.Merchants.Add(merchant);

            db.SaveChanges();
            return RedirectToAction("Index");
        }
        var _context = new ApplicationDbContext();
        var UserManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(_context));
        UserManager.AddToRole("MerchantID", "Merchant");

        return View(merchant);
    }

Мои строки подключения:

    <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=        (LocalDb)\v11.0;Initial Catalog=FlavorPing-2-1-alpha1;Integrated Security=SSPI"
    providerName="System.Data.SqlClient" />
    <add name="FlavorPingContext" connectionString="Data Source=   (localdb)\v11.0; Initial Catalog=FlavorPingContext-20150707103956; Integrated    Security=True; MultipleActiveResultSets=True;   AttachDbFilename=|DataDirectory|FlavorPingContext-20150707103956.mdf"
     providerName="System.Data.SqlClient" />
     </connectionStrings><appSettings>

1 ответ

Не должно ли это быть?

UserManager.AddToRole(merchant.MerchantID, "Merchant");
Другие вопросы по тегам