Пример #1
0
 public PostType(IApplicationUsersRepository applicationUserRepository)
 {
     Name = "Post";
     Field(post => post.Id);
     Field(post => post.Title);
     Field(post => post.Body);
     Field(post => post.CreatedAt);
     Field(post => post.AuthorId);
     Field <ApplicationUserType>(
         "Author",
         resolve: context =>
         applicationUserRepository.FindById(context.Source.AuthorId)
         );
 }
Пример #2
0
        public ApplicationUsersUnitOfWork(
            UserManager <ApplicationUser> userManager,
            RoleManager <IdentityRole> roleManager,
            IUserStore <ApplicationUser> userStore,
            IRoleStore <IdentityRole> roleStore)
        {
            _userManager = userManager;
            _roleManager = roleManager;
            _roleStore   = roleStore as RoleStore <IdentityRole, ApplicationDbContext, string, IdentityUserRole <string>, IdentityRoleClaim <string> >;
            _userStore   = userStore as UserStore <ApplicationUser, IdentityRole, ApplicationDbContext, string, IdentityUserClaim <string>, IdentityUserRole <string>, IdentityUserLogin <string>, IdentityUserToken <string>, IdentityRoleClaim <string> >;
            _userStore.AutoSaveChanges = false;
            _roleStore.AutoSaveChanges = false;

            _applicationUsers = new ApplicationUsersRepository(_userStore.Context, _userManager, _roleManager);
            _applicationRoles = new ApplicationRolesRepository(_userManager, _roleManager);
        }
Пример #3
0
        public RootQuery(
            IPostsRepository postsRepository,
            IApplicationUsersRepository applicationUserRepository)
        {
            Name = "Query";

            Field <ListGraphType <ApplicationUserType> >(
                "AllApplicationUser",
                resolve: context => applicationUserRepository.GetAll()
                );

            Field <ApplicationUserType>(
                "ApplicationUser",
                arguments: new QueryArguments(
                    new QueryArgument <StringGraphType> {
                Name = "email"
            }),
                resolve: context => applicationUserRepository
                .FindByEmail(context.GetArgument <string>("email"))
                );

            Field <ListGraphType <PostType> >(
                "AllPost",
                resolve: context => postsRepository.GetAll()
                );

            Field <PostType>(
                "Post",
                arguments: new QueryArguments(
                    new QueryArgument <StringGraphType> {
                Name = "id"
            }),
                resolve: context =>
                postsRepository.FindById(context.GetArgument <string>("id"))
                );
        }
 public ApplicationUsersService(IApplicationUsersRepository applicationUsersRepository)
 {
     _applicationUsersRepository = applicationUsersRepository;
 }
Пример #5
0
 public ApplicationUserController(IApplicationUsersRepository repository) => _applicationUsersRepository = repository;
        public RootMutation(
            IApplicationUsersRepository applicationUserRepository,
            IPostsRepository postRepository)
        {
            Name = "Mutation";

            Field <ApplicationUserType>(
                "SignUp",
                arguments: new QueryArguments(
                    new QueryArgument <StringGraphType> {
                Name = "userName"
            },
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "email"
            },
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "password"
            }),
                resolve: context =>
            {
                var userName = context.GetArgument <string>("userName");
                var email    = context.GetArgument <string>("email");
                var password = context.GetArgument <string>("password");
                return(applicationUserRepository.Create(userName, email, password));
            }
                );

            Field <ApplicationUserType>(
                "SignIn",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "email"
            },
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "password"
            }),
                resolve: context =>
            {
                var email    = context.GetArgument <string>("email");
                var password = context.GetArgument <string>("password");
                return(applicationUserRepository.GetAuthenticatedUser(email, password));
            }
                );

            Field <PostType>(
                "CreatePost",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <PostInputType> > {
                Name = "newPost"
            }),
                resolve: context => postRepository.Create(context.GetArgument <Post>("newPost"))
                );

            Field <PostType>(
                "UpdatePost",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <PostInputType> > {
                Name = "updatedPost"
            }),
                resolve: context => postRepository.Update(context.GetArgument <Post>("updatedPost"))
                );

            Field <PostType>(
                "DeletePost",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "postId"
            }),
                resolve: context => postRepository.Delete(context.GetArgument <string>("postId"))
                );
        }
Пример #7
0
 public HomeController(IApplicationUsersRepository applicationUserRepository, IIdentityRoleUsersRepository identityUserRepository)
 {
     _applicationUserRepository = applicationUserRepository;
     _identityUserRepository    = identityUserRepository;
 }