Asp.Net Core RC2与Microsoft.Owin

时间:2015-04-23 15:40:23

标签: .net asp.net-core owin coreclr

using Microsoft.Owin;处添加Startup.cs行时无法编译项目。 VS抛出一个错误: ASP.NET Core 5.0 error CS0234: The type or namespace name 'Owin' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) 这是我的project.json文件:

{
    "webroot": "wwwroot",
    "version": "1.0.0-*",
    "dependencies": {
        "Microsoft.AspNet.Mvc": "6.0.0-beta3",
        "Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
        "Microsoft.Owin": "3.0.1",
        "Microsoft.Owin.Security": "3.0.1",
        "Microsoft.Owin.Security.OAuth": "3.0.1",
        "Microsoft.Owin.Security.Cookies": "3.0.1"
    },
    "frameworks": {
        "aspnetcore50": {}
    },
    "bundleExclude": [
        "node_modules",
        "bower_components",
        "**.kproj",
        "**.user",
        "**.vspscc"
    ],
    "exclude": [
        "wwwroot",
        "node_modules",
        "bower_components"
    ]
}

我错过了什么吗?

先决条件:Visual Studio 2015 CTP版本14.0.22609.0 D14REL,空ASP.NET 5预览模板

2 个答案:

答案 0 :(得分:3)

似乎Owin库(版本3.0.1)与Microsoft的.NET框架的新核心版本不兼容。

要解决此问题,您可以将框架条目从aspnetcore50更改为aspnet50,它使用完整的.NET框架而不是核心版本来运行您的应用程序。

我刚刚开始探索ASP 5,并且发现这里的示例非常有用:https://github.com/aspnet/Home/tree/dev/samples/1.0.0-beta4/HelloMvc

编辑:既然VS 2015 RC出局了,这又改变了。现在,您将使用dnx451 / dnxcore451作为目标框架。

答案 1 :(得分:2)

在asp.net核心的RC2中,使用

"Microsoft.AspNetCore.Owin": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Cors": "1.0.0-rc2-final",

"Microsoft.AspNetCore.Authentication": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Authentication.OAuth": "1.0.0-rc2-final",
"Microsoft.AspNetCore.Authentication.Cookies: "1.0.0-rc2-final",

永远不要在ASP.NET核心中使用Microsoft.Owin... - 这些是传统的ASP.NET应用程序。