コード例 #1
0
 public AccountController(QuizAppDb context, UserManager <User> userManager, IConfiguration configuration)
 {
     _context       = context;
     _answerService = new AnswerService(_context);
     _userManager   = userManager;
     _configuration = configuration;
 }
コード例 #2
0
 public SessionService(QuizAppDb context, IAnswerService answerService, IChallengeService challengeService, IQuestionService questionService, IHttpContextAccessor httpContext, IAccountService accountService)
 {
     _context          = context;
     _answerService    = answerService;
     _challengeService = challengeService;
     _questionService  = questionService;
     _httpContext      = httpContext;
     _accountService   = accountService;
 }
コード例 #3
0
        public ActionResult ExternalLoginConfirmation(RegisterExternalLoginModel model, string returnUrl)
        {
            string provider       = null;
            string providerUserId = null;

            if (User.Identity.IsAuthenticated || !OAuthWebSecurity.TryDeserializeProviderUserId(model.ExternalLoginData, out provider, out providerUserId))
            {
                return(RedirectToAction("Manage"));
            }

            if (ModelState.IsValid)
            {
                // Insert a new user into the database
                using (var db = new QuizAppDb())
                {
                    UserProfile user = db.UserProfiles.FirstOrDefault(u => u.UserName.ToLower() == model.UserName.ToLower());
                    // Check if user already exists
                    if (user == null)
                    {
                        // Insert name into the profile table
                        db.UserProfiles.Add(new UserProfile {
                            UserName = model.UserName
                        });
                        db.SaveChanges();

                        OAuthWebSecurity.CreateOrUpdateAccount(provider, providerUserId, model.UserName);
                        OAuthWebSecurity.Login(provider, providerUserId, createPersistentCookie: false);

                        return(RedirectToLocal(returnUrl));
                    }
                    else
                    {
                        ModelState.AddModelError("UserName", "User name already exists. Please enter a different user name.");
                    }
                }
            }

            ViewBag.ProviderDisplayName = OAuthWebSecurity.GetOAuthClientData(provider).DisplayName;
            ViewBag.ReturnUrl           = returnUrl;
            return(View(model));
        }
コード例 #4
0
 public AccountService(QuizAppDb context, UserManager <User> userManager)
 {
     _context     = context;
     _userManager = userManager;
 }
コード例 #5
0
 public QuestionService(QuizAppDb context, IAnswerService answerService, ICategoryService categoryService)
 {
     _context         = context;
     _answerService   = answerService;
     _categoryService = categoryService;
 }
コード例 #6
0
 public QuizTypeService(QuizAppDb context)
 {
     _context = context;
 }
コード例 #7
0
 public CategoryService(QuizAppDb context)
 {
     _context = context;
 }
コード例 #8
0
 public ColorService(QuizAppDb context)
 {
     _context = context;
 }
コード例 #9
0
 public ChallengeService(QuizAppDb context, ICategoryService categoryService)
 {
     _context         = context;
     _categoryService = categoryService;
 }
コード例 #10
0
 public AnswerService(QuizAppDb context)
 {
     _context = context;
 }