soc*_*man 5 c# sqlite entity-framework-core asp.net-core
当我尝试加载我的网站或尝试通过以下方式应用我的迁移时,出现以下错误 k ef migration apply
An unhandled exception occurred while processing the request.
TypeLoadException: Could not load type 'Microsoft.Data.SQLite.SQLiteParameter' from assembly 'Microsoft.Data.SQLite, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
Run Code Online (Sandbox Code Playgroud)
我的背景:
using Microsoft.Data.Entity;
using Microsoft.Data.Entity.Metadata;
namespace MvcSample.Web.Models
{
public class HelloMvcContext : DbContext
{
public DbSet<User> Users { get; set; }
protected override void OnConfiguring(DbContextOptions options)
{
options.UseSQLite(@"Filename=hellomvc.db");
}
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<User>().Key(m => m.ID);
base.OnModelCreating(builder);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的startup.cs:
using Microsoft.AspNet.Builder;
using Microsoft.Framework.DependencyInjection;
using MvcSample.Web.Models;
namespace HelloMvc
{
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseErrorPage();
app.UseMvc();
app.UseWelcomePage();
}
public void ConfigureServices(IServiceCollection services)
{
services.AddEntityFramework()
.AddSQLite()
.AddDbContext<HelloMvcContext>();
services.AddMvc();
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的project.json:
{
"dependencies": {
"Kestrel": "1.0.0-beta1",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta1",
"Microsoft.AspNet.Hosting": "1.0.0-beta1",
"Microsoft.AspNet.Mvc": "6.0.0-beta1",
"EntityFramework.SQLite": "7.0.0-beta1",
"EntityFramework.Commands" : "7.0.0-beta1",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta1",
"Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta1",
"Microsoft.Framework.OptionsModel": "1.0.0-beta1",
"kmon": "0.3.0"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001",
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5004",
"mon" : "kmon --ext cs,json,js --server kestrel",
"ef" : "EntityFramework.Commands"
},
"frameworks": {
"aspnet50": {},
"aspnetcore50": {}
}
}
Run Code Online (Sandbox Code Playgroud)
SQLite beta 1 已经发布了 8 个月,在该版本支持迁移之前工作已经停止。SQLite 提供程序的工作已重新启动,通过检查测试,现在看起来支持迁移,但在您的应用程序中实现此功能的唯一方法是从 dev 中提取 EntityFramework 的源代码并在本地构建它。或者你可以等到 beta5 发布。
| 归档时间: |
|
| 查看次数: |
1275 次 |
| 最近记录: |