Reputation: 607
In a asp.net core app, I am trying to to migration for EF code fist.
I got below errors,
An error occurred while calling method 'ConfigureServices' on startup class 'WebAppHandOn.Startup'. Consider using IDbContextFactory to override the initialization of the DbContext at design-time. Error: Could not load file or assembly 'Microsoft.AspNetCore.Routing, Version=1.0.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
No parameterless constructor was found on 'ApplicationDbContext'. Either add a parameterless constructor to 'ApplicationDbContext' or add an implementation of 'IDbContextFactory' in the same assembly as 'ApplicationDbContext'.
Here are the different code files,
Startup Class
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
// Add EntityFramework's Identity support.
services.AddEntityFramework();
// Add ApplicationDbContext.
services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]));
}
ApplicationDBContext Class
public class ApplicationDbContext : DbContext {
#region Constructor
public ApplicationDbContext(DbContextOptions options) : base(options)
{
}
#endregion Constructor
#region Methods
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
}
#endregion Methods
#region Properties
public DbSet<Item> Items { get; set; }
public DbSet<Comment> Comments { get; set; }
public DbSet<ApplicationUser> Users { get; set; }
#endregion Properties
}
{
"dependencies": {
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Routing": "1.0.0",
"Microsoft.AspNetCore.Authentication.JwtBearer": "1.0.0",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
"Newtonsoft.Json": "9.0.1",
"Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0",
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
"Microsoft.EntityFrameworkCore": "1.0.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
"Microsoft.EntityFrameworkCore.Design": "1.0.0-preview2-final",
"TinyMapper": "2.0.8"
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
},
Upvotes: 0
Views: 1457
Reputation: 121
Check yourproject.csproj file, remove any preview version in any PackageReference tag and reinstall stable version with manage NuGet packages. Hope that helps
Upvotes: 0