Ciao Moreno,
entro sera proverò sicuramente a seguire i tuoi suggerimenti e le tue indicazioni (intanto ti ringrazio veramente tanto!!!).
Il progetto era già stato creato (senza autenticazione) quindi sto inserendo adesso il necessario...dato che provengo da questa discussione
http://forum.aspitalia.com/forum/post/420941/Connessione-DB-MySql.aspx in questo momento sto impostando il file di "Startup.cs" in questo modo:
public class Startup
{
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
public IConfiguration Configuration { get; }
// 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<DbContext>(options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
services.AddScoped<BackEndContext>();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
app.UseHsts();
}
//app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseMvc(routes =>
{
routes.MapRoute(
name: "area",
template: "{area:exists}/{controller=Admin}/{action=Index}/{id?}");
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
}
Ora questa riga
services.AddScoped<BackEndContext>();
l'avevo inserita seguendo le indicazioni che mi avevi dato nell'altro post e il tutto funziona regolarmente...quindi mi chiedo:
1) - i due richiami al dbcontext possono coesistere oppure non è necessario usarli entrambi? Mi riferisco a
services.AddDbContext<DbContext>(options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
services.AddScoped<BackEndContext>();
In questo momento il file "BackEndContext" è configurato in questo modo:
public class BackEndContext
{
public string ConnectionString { get; set; }
public BackEndContext(IConfiguration configuration)
{
this.ConnectionString = configuration.GetConnectionString("DefaultConnection");
}
private MySqlConnection GetConnection() => new MySqlConnection(ConnectionString);
public List<Utenti> GetAllUtenti()
{
Dictionary<string, object> p = new Dictionary<string, object>();
List<Utenti> list = SQLHelper.FillByQueryName(enQueries.BackEnd_Utenti, p, GetConnection()).ConvertDataTableToGenericList<Utenti>();
return list;
}
}
Grazie in anticipo!!!