예제 #1
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            //fornece uma instancia de HttpContextAcessor
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddScoped <RelatorioVendasService>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));

            services.AddControllersWithViews();
            services.AddPaging(options => {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            //Cria o serviço de conexão com o banco de dados
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            //fornece uma instancia de HttpContextAcessor //Registra o serviço do CarrinhoCompra
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            //Cria o serviço que utiliza as clases da pasta Repository
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IComidaRepository, ComidaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            //Define o carrinho para cada requisição sem ter ligação com a instância
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));

            services.AddControllersWithViews();

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #3
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews();

            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))
                                                 );

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AcessDenied");

            services.AddDistributedMemoryCache();
            services.AddSession();

            //registro os objetos do Repositories como serviço para serem criados quando forem necessários.
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));

            //services.AddMemoryCache();
        }
예제 #4
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            services.AddTransient <IProdutoRepository, ProdutoRepository>();
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddScoped <RelatorioVendasService>();

            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddControllersWithViews();

            services.AddPaging(options => {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            services.AddMemoryCache();
            services.AddSession();
        }
예제 #5
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            //fornece uma instancia de HttpContextAcessor
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));

            services.AddSession();
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
            services.AddMemoryCache();


            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("AppDbContext")));
        }
예제 #6
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            //fornece uma instancia de HttpContextAcessor
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));

            services.AddMvc();

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();

            /*services.AddAuthentication().AddFacebook(facebookOptions =>
             * {
             *  facebookOptions.AppId = Configuration["Authentication:Facebook:AppId"];
             *  facebookOptions.AppSecret = Configuration["Authentication:Facebook:AppSecret"];
             * })*/
        }
예제 #7
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddMemoryCache();
            services.AddSession();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        }
예제 #8
0
 // This method gets called by the runtime. Use this method to add services to the container.
 public void ConfigureServices(IServiceCollection services)
 {
     services.AddDbContext <DataContext>(options => options.UseSqlServer(Configuration.GetConnectionString("Interno")));
     services.AddTransient <ICategoriaRepository, CategoriaRepository>();
     services.AddTransient <ILancheRepository, LanchesRepository>();
     services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
     services.AddScoped(c => CarrinhoCompra.GetCarrinho(c));
     services.AddControllersWithViews();
     services.AddSession();
     services.AddMemoryCache();
 }
예제 #9
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews();
            // services.AddDbContext<AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("base")));
            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Util.GetConnectionString("base")));


            /// <summary>
            // configurando o serviço de identificação de usuario
            // passando o contexto da aplicação
            /// </summary>
            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();


            //serviço par acesso negado.
            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AcessDanied");


            //Registrando como serviço minhas interfaces pra ser usado nos controles...
            //specified = especificado  / transient = transitorio
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();  // =>transient , significa que o objeto vai ser criado toda vez que for chamado, criando um novo objeto desse servico.
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();   //=> AddSingleton   => é instanciado uma única vez... ou seja todas as chamadas "requisições" obtém o mesmo objeto.


            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto RelatorioVendasService ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped <RelatorioVendasService>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));             //=> é criado instancia diferentes do objeto pra cada requisição...


            //Configurando pagina com pacote de terceiros.
            services.AddPaging(options =>
            {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            services.AddMemoryCache();
            services.AddSession();
            //services.AddMvc();  eu nao tinha
        }
예제 #10
0
        public void ConfigureServices(IServiceCollection services)
        {
            // Configurations=>ExtensionMethods
            // --------------------------------
            services.AddDependencyInjection();
            services.AddIdentityConfiguration(Configuration);
            services.AddMyDataContextConfiguration(Configuration);



            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");
            services.Configure <ConfigurationImagens>(Configuration.GetSection("ConfigurationPastaImagens"));

            services.AddAutoMapper(typeof(Startup));

            services.AddMsgMvcConfiguration();

            services.AddDistributedMemoryCache();


            // Todo: Depois migrar para os locais corretos, fora do Mvc
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddScoped <RelatorioVendasService>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));


            services.AddControllersWithViews();
            services.AddPaging(options =>
            {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();


            services.AddRazorPages();
        }
예제 #11
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            var conexao = Configuration.GetConnectionString("DefaultConnection");

            services.AddDbContext <AppDbContext>(builder =>
                                                 builder.UseMySql(conexao, ServerVersion.AutoDetect(conexao),
                                                                  options => { options.EnableRetryOnFailure(); }));


            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));

            services.AddControllersWithViews().AddRazorRuntimeCompilation();
            services.AddSession();
        }
예제 #12
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddMvc();

            services.AddMvc(option => option.EnableEndpointRouting = false);

            services.AddMemoryCache();
            services.AddSession();

            services.AddControllersWithViews();
        }
예제 #13
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services) // injeção de dependencia
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            //options => options.SignIn.RequireConfirmedAccount = true
            services.AddIdentity <IdentityUser, IdentityRole>(options =>
            {
                options.Password.RequiredLength         = 6;
                options.Password.RequiredUniqueChars    = 3;
                options.Password.RequireNonAlphanumeric = false;
                options.Password.RequireLowercase       = true;
                options.Password.RequireUppercase       = true;
                options.Password.RequireDigit           = true;
            })
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");


            services.AddTransient <ICategoriaRepository, CategoriaRepository>(); //toda vez que é requisitado cria um objeto
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddScoped <RelatorioVendasService>();

            //services.AddSingleton<IHttpContextAccessor, IHttpContextAccessor>(); //singleton: o objeto criado será utilziado para todas requisições
            services.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>(); //resolve erro do serviço acima

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));               // mesmo criando o objeto, caso crie mais de um, serão de instancias diferentes

            services.AddControllersWithViews();

            services.AddPaging(options =>
            {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            services.AddMemoryCache();
            services.AddSession();
        }
예제 #14
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();


            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddControllersWithViews();
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #15
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>().AddEntityFrameworkStores <AppDbContext>().AddDefaultTokenProviders();

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            //Injeção de Depedencias
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();


            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddMvc();


            services.AddMemoryCache();
            services.AddSession();
        }
예제 #16
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            var connection = Configuration["ConexaoMySql:MySqlConnectionString"];

            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseMySql(connection));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.Configure <IdentityOptions>(options =>
            {
                options.Password.RequiredLength         = 8;
                options.Password.RequiredUniqueChars    = 1;
                options.Password.RequireNonAlphanumeric = true;
                options.Password.RequireDigit           = false;
            });

            services.ConfigureApplicationCookie(option => option.AccessDeniedPath = "/Home/AcessDenied");

            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IProdutoRepository, ProdutoRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();
            services.AddTransient <IClienteRepository, ClienteRepository>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));

            services.AddControllersWithViews();

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #17
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            services.Configure <IdentityOptions>(options =>
            {
                options.Password.RequireDigit           = false;
                options.Password.RequiredLength         = 4;
                options.Password.RequireNonAlphanumeric = false;
                options.Password.RequireUppercase       = true;
                options.Password.RequireLowercase       = false;
            });

            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            //fornece uma instancia de HttpContextAcessor
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));

            services.AddControllersWithViews();

            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #18
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
            services.AddControllersWithViews();

            // Registrar o AddIdentity que vai adicionar o Identity padrão para os tipos de usuários e perfis especificados que vão
            // ser o IdentityUser e o IdentityRole. Depois, adicionamos o AddEntityFrameworkStore e referenciar o contexto da aplicação
            // O AddEntityFramework adiciona uma implementação do EntityFrameWork que armazena as informações de entidade
            // Com o AddDefaultTokenProviders configuramos o serviço do Identity para incluir a configuração do sistema padrão do Identity
            // para o usuário, representado em IdentityUser e o perfil em IdentityRole, usando o contexto (AppDbContext) do EntityFrameWorkCore
            // O AddDefaulttokenProviders vai incluir os tokens para troca de senha e envio de e-mails

            services.AddIdentity <IdentityUser, IdentityRole>()
            .AddEntityFrameworkStores <AppDbContext>()
            .AddDefaultTokenProviders();

            // Se ocorrer o acesso negado, o usuário é direcionado para essa url
            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            // .AddTransient -> o serviço será criado cada vez que for solicitado
            // .AddScope -> criado uma vez por solicitação (cada requisição). Se duas pessoas solicitarem ao mesmo
            // tempo, cada uma terá o seu carrinho e não teremos carrinhos duplicados
            // .AddSingleton -> Usado na primeira vez que for solicitado (todas as requisições tenho o mesmo objeto)
            // services.AddTransient<Interface, Implementação>
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddMvc();
            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();
        }
예제 #19
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllersWithViews().AddRazorRuntimeCompilation();
            services.AddDbContext <SBContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            services.AddTransient <ICategoriaRP, CategoriaRP>();
            services.AddTransient <IProdutoRP, ProdutoRP>();
            services.AddTransient <ICarrinhoCompraItemRP, CarrinhoCompraItemRP>();
            services.AddTransient <IPedidoRP, PedidoRP>();

            services.AddTransient <ICarrinhoCompraService, CarrinhoCompraServices>();
            services.AddTransient <IProdutoService, ProdutoServices>();
            services.AddTransient <ICategoriaService, CategoriaServices>();
            services.AddTransient <IPedidoService, PedidoServices>();

            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddAutoMapper(typeof(Configuration));

            services.AddScoped(CP => CarrinhoCompra.GetCarrinho(CP));
            services.AddDistributedMemoryCache();
            services.AddSession();
        }
예제 #20
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <AppDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            // AddDefaultTokenProviders -> gera tokens para troca/reset de pw e email
            services.AddIdentity <IdentityUser, IdentityRole>().AddEntityFrameworkStores <AppDbContext>().AddDefaultTokenProviders();

            // se pagina nao autorizada, entao o controller da vai apresentar uma view atraves do metodo action AcessDenied
            services.ConfigureApplicationCookie(options => options.AccessDeniedPath = "/Home/AccessDenied");

            // trabalhar com imagens
            // ConfigurationPastaImagens em appsettings
            services.Configure <ConfigurationImagens>(Configuration.GetSection("ConfigurationPastaImagens"));

            // serviço criado cada vez que for solicitado => AddTransient
            // serviço criado uma vez por solicitaçao => AddScoped
            // serviço usado na primeira vez que for solicitado => AddSingleton (todas as requicoes obtêm o mesmo objeto)
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();

            services.AddScoped <RelatorioVendasService>();

            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>(); // para ter acesso à sessão no contexto

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));            // carrinho criado para cada requisição

            services.AddControllersWithViews();

            services.AddPaging(options => {
                options.ViewName          = "Bootstrap4";
                options.PageParameterName = "pageindex";
            });

            services.AddMemoryCache();
            services.AddSession();
        }
예제 #21
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            services.AddDbContext <LanchoneteCoreContext>(options =>
                                                          options.UseSqlServer(Configuration.GetConnectionString("LanchoneteCoreContext")));
            services.AddScoped <ProdutoService>();
            services.AddScoped <AtendenteService>();
            services.AddScoped <ClienteService>();
            //services.AddScoped<PedidoService>();
            services.AddTransient <IProdutoRepository, ProdutoRepository>();
            services.AddTransient <IPedidoRepository, PedidoRepository>();


            //fornece uma instancia de HttpContextAcessor
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            //cria um objeto Scoped, ou seja um objeto que esta associado a requisição
            //isso significa que se duas pessoas solicitarem o objeto CarrinhoCompra ao  mesmo tempo
            //elas vão obter instâncias diferentes
            services.AddScoped(sp => CarrinhoCompra.GetCarrinho(sp));



            //configura o uso da Sessão
            services.AddMemoryCache();
            services.AddSession();

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
            services.AddMvc();
        }
예제 #22
0
파일: Startup.cs 프로젝트: sergiopires/food
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            //adicionado o servico que chama a conection string configurada para o fazer o mapeamento do conteste
            services.AddDbContext <AppDbContext>(options =>
                                                 options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

            //Registrar o servico para injecao de independencia
            services.AddTransient <ICategoriaRepository, CategoriaRepository>();
            services.AddTransient <ILancheRepository, LancheRepository>();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddScoped(cp => CarrinhoCompra.GetCarrinho(cp));
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

            services.AddMemoryCache();
            services.AddSession();
        }