O que faço quando o ASP.NET 5 (vNext) não pode redirecionar ligações?

Estou apenas começando a usar o MVC 6. Instalei o VS 2015 e com o padrãoASP.NET 5 preview MVC Web Application modelo tudo funciona bem no IIS local.

Tentei então trocar o contêiner DI padrão comStructureMap Segueestas instruções exatamente (observe que é um artigo muito recente). A única coisa é que tive que descobrir os namespaces para me importar (já que o autor deixou de incluí-los) e foi isso que incluí.

eu ponho oStructureMapRegistration classe e todas as classes relacionadas em um único arquivo, e aqui estão os usos.

using Microsoft.Framework.DependencyInjection;
using StructureMap;
using StructureMap.Configuration.DSL.Expressions;

Eu adicionei os seguintes usos aoStartup.cs Arquivo.

using StructureMap;
using StructureMap.Graph;
using System.Reflection;

E eu fiz a seguinte edição noStartup.cs Arquivo.

// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
    // Add Entity Framework services to the services container.
    services.AddEntityFramework()
        .AddSqlServer()
        .AddDbContext<ApplicationDbContext>(options =>
            options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]));

    // Add Identity services to the services container.
    services.AddIdentity<ApplicationUser, IdentityRole>()
        .AddEntityFrameworkStores<ApplicationDbContext>()
        .AddDefaultTokenProviders();

    // Configure the options for the authentication middleware.
    // You can add options for Google, Twitter and other middleware as shown below.
    // For more information see http://go.microsoft.com/fwlink/?LinkID=532715
    services.Configure<FacebookAuthenticationOptions>(options =>
    {
        options.AppId = Configuration["Authentication:Facebook:AppId"];
        options.AppSecret = Configuration["Authentication:Facebook:AppSecret"];
    });

    services.Configure<MicrosoftAccountAuthenticationOptions>(options =>
    {
        options.ClientId = Configuration["Authentication:MicrosoftAccount:ClientId"];
        options.ClientSecret = Configuration["Authentication:MicrosoftAccount:ClientSecret"];
    });

    // Add MVC services to the services container.
    services.AddMvc();

    //// Uncomment the following line to add Web API services which makes it easier to port Web API 2 controllers.
    //// You will also need to add the Microsoft.AspNet.Mvc.WebApiCompatShim package to the 'dependencies' section of project.json.
    //// services.AddWebApiConventions();

    //// Register application services.
    //services.AddTransient<IEmailSender, AuthMessageSender>();
    //services.AddTransient<ISmsSender, AuthMessageSender>();

    var container = new Container();
    container.Configure(x =>
    {
        x.Scan(scanning =>
        {
            scanning.Assembly(Assembly.GetExecutingAssembly());
            scanning.TheCallingAssembly();
            scanning.WithDefaultConventions();
        });

        //x.AddRegistry<WebsiteRegistry>();
    });

    // Our framework extension point
    container.Populate(services);
}

Literalmente, o O que eu mudei do modelo padrão são as alterações de código acima e a instalaçãoStructureMap 3.1.6.186

As instruções using suprimem todos os erros de compilação do tempo de design, mas quando eu construo, recebo vários outros erros.

Erro CS0012 O tipo 'Ação <>' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 32

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 32

Erro CS0012 O tipo 'Func <,>' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 59

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 59

Erro CS0012 O tipo 'Tipo' é definido em uma montagem que não é referenciada. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 63

Erro CS0012 O tipo 'Expressão <>' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'System.Core, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 63

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 63

Erro CS0012 O tipo 'Tipo' é definido em uma montagem que não é referenciada. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 67

Erro CS0012 O tipo 'Expressão <>' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'System.Core, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 67

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Usuários \ Shad \ documents \ visual studio 2015 \ Projetos \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 67

Erro CS0012 O tipo 'Tipo' é definido em uma montagem que não é referenciada. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 89

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 89

Erro CS0411 Os argumentos de tipo para o método 'IContainer.GetInstance (string)' não podem ser deduzidos do uso. Tente especificar explicitamente os argumentos de tipo. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 89

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 107

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 107

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 120

O erro CS1061 'IContainer' não contém uma definição para 'Dispose' e nenhum método de extensão 'Dispose' aceitando um primeiro argumento do tipo 'IContainer' foi encontrado (está faltando uma diretiva de uso ou uma referência de montagem?) TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Services \ StructureMapRegistration.cs 120

Erro CS0012 O tipo 'Ação <>' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Startup.cs 94

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Startup.cs 94

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Startup.cs 107

Erro CS0012 O tipo 'IDisposable' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Startup.cs 107

Erro CS0012 O tipo 'Objeto' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'mscorlib, Versão = 2.0.5.0, Culture = neutral, PublicKeyToken = 7cec85d7bea7798e, Retargetable = Yes'. TestDI3.DNX Core 5.0 f: \ Users \ Shad \ documents \ visual studio 2015 \ Projects \ TestDI3 \ src \ TestDI3 \ Startup.cs 107

O erro indica onde está o problema - eu preciso de uma referência ao mscorlib 2.0.5.0. Mas eu já estou fazendo referência ao mscorlib 4.0.0.0 no projeto.

Neste ponto no ASP.NET <5, a próxima etapa normalmente seria adicionar alguns redirecionamentos de ligação ao diretório<bindingRedirect> seção do arquivo web.config. No entanto, depois de pesquisar como fazer isso no ASP.NET 5, me deparei comesta resposta o que indica que o redirecionamento de ligação deve ser "totalmente automático".

Portanto, isso é um bug ou há alguma etapa na minha configuração que eu perdi que está resultando nesse erro?

Configuração

DNX 1.0.0-beta5

.NET Framework

x86

IIS Express

project.json
{
    "webroot": "wwwroot",
    "userSecretsId": "aspnet5-TestDI3-1665343b-5aa5-4d08-8596-a1a536223a19",
    "version": "1.0.0-*",

    "dependencies": {
        "EntityFramework.SqlServer": "7.0.0-beta5",
        "EntityFramework.Commands": "7.0.0-beta5",
        "Microsoft.AspNet.Mvc": "6.0.0-beta5",
        "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta5",
        "Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta5",
        "Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta5",
        "Microsoft.AspNet.Authentication.Google": "1.0.0-beta5",
        "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta5",
        "Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta5",
        "Microsoft.AspNet.Diagnostics": "1.0.0-beta5",
        "Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta5",
        "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta5",
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta5",
        "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5",
        "Microsoft.AspNet.StaticFiles": "1.0.0-beta5",
        "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta5",
        "Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta5",
        "Microsoft.Framework.Configuration.Json": "1.0.0-beta5",
        "Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta5",
        "Microsoft.Framework.Logging": "1.0.0-beta5",
        "Microsoft.Framework.Logging.Console": "1.0.0-beta5",
        "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta5",
        "structuremap": "3.1.6.186"
    },

    "commands": {
        "web": "Microsoft.AspNet.Hosting --config hosting.ini",
        "ef": "EntityFramework.Commands"
    },

    "frameworks": {
        "dnx451": { },
        "dnxcore50": { }
    },

    "exclude": [
        "wwwroot",
        "node_modules",
        "bower_components"
    ],
    "publishExclude": [
        "node_modules",
        "bower_components",
        "**.xproj",
        "**.user",
        "**.vspscc"
    ],
    "scripts": {
        "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ]
    }
}

questionAnswers(1)

yourAnswerToTheQuestion