2016-06-24 82 views
1

我们已将项目从Asp.Net核心RC1迁移至RC2。迁移后,我们在以下地点收到2个编译错误。将Asp.Net Core RC1迁移至RC2后的问题

第一个问题是在startup.cs “的号召是以下方法或属性之间暧昧:”

public void ConfigureServices(IServiceCollection services) 
{ 

... 

services.AddIdentity<ApplicationUser, IdentityRole>() 
     .AddEntityFrameworkStores<ApplicationDbContext>() 
     .AddDefaultTokenProviders(); 


     ... 
} 

错误详细信息:

Error CS0121 The call is ambiguous between the following methods or properties: 'Microsoft.Extensions.DependencyInjection.IdentityServiceCollectionExtensions.AddIdentity<TUser, TRole>(Microsoft.Extensions.DependencyInjection.IServiceCollection)' and 'Microsoft.Extensions.DependencyInjection.IdentityServiceCollectionExtensions.AddIdentity<TUser, TRole>(Microsoft.Extensions.DependencyInjection.IServiceCollection)' Firebolt.SecurityService..NETCoreApp,Version=v1.0 C:\Krishnan\RSI\SourceCode\Bluesky Developement\BlueSky Development\Firebolt.Security\src\Firebolt.Security\Startup.cs 58 Active 

第二期:

[Microsoft.Data.Entity.Infrastructure.DbContext(typeof(ApplicationDbContext))] 
    [Migration("00000000000000_CreateIdentitySchema")] 
    partial class CreateIdentitySchema 
    { 
     protected override void BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder modelBuilder) 
     { 
    ... 
} 

错误详细信息:

Error CS0115 'CreateIdentitySchema.BuildTargetModel(ModelBuilder)': no suitable method found to override Firebolt.SecurityService..NETCoreApp,Version=v1.0 C:\Krishnan\RSI\SourceCode\Bluesky Developement\BlueSky Development\Firebolt.Security\src\Firebolt.Security\Migrations\00000000000000_CreateIdentitySchema.Designer.cs 15 Active 

这两个问题的解决方法是什么?任何想法

+0

我的startup.cs中的AddMvc()行出现了类似的错误,这是因为在我的project.json中有一个不兼容的swashbuckle版本。必须将它从'6.0.0-rc1-final'更新为'6.0.0-beta901'。 – James

回答

2

我找到了解决这两个问题的方法。我在这里张贴这可能是别人

首次发行

Error CS0121 The call is ambiguous between the following methods or properties: 'Microsoft.Extensions.DependencyInjection.IdentityServiceCollectionExtensions.AddIdentity<TUser, TRole>(Microsoft.Extensions.DependencyInjection.IServiceCollection)' and 'Microsoft.Extensions.DependencyInjection.IdentityServiceCollectionExtensions.AddIdentity<TUser, TRole>(Microsoft.Extensions.DependencyInjection.IServiceCollection)' Firebolt.SecurityService..NETCoreApp,Version=v1.0 

的问题是,在Project.json以下2项的配置非常有用。我取代了现有的条目有以下2,它解决了这个问题

"Microsoft.AspNetCore.Identity": "1.0.0-rc2-final", 
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0-rc2-final", 

第二期

Error CS0115 'CreateIdentitySchema.BuildTargetModel(ModelBuilder)': no suitable method found to override Firebolt.SecurityService..NETCoreApp,Version=v1.0 

查找/所有迁移替换现有使用的命名空间相关的类

using Microsoft.Data.Entity with using Microsoft.EntityFrameworkCore 
1

我也使用dot net core 2.0在我的迁移中遇到了这个错误。希望这可以帮助某人。

错误CS0115“init.BuildTargetModel(模型构建)”:发现覆盖

这是在我的移民类别被移动了一个新的命名空间的重构后没有合适的方法。我已经将它们从MyApp.Migrations移到MyApp.Web.Migrations,dot net不喜欢那样。

我将它们移回MyApp.Migrations,他们停止抱怨。