如何在asp.net 5应用程序中使用OWIN

本文关键字:OWIN 应用程序 asp net | 更新日期: 2023-09-27 17:50:03

我用asp.net预览模板创建了我的网站,我想尝试将azure AAD身份验证集成到其中。

https://github.com/AzureADSamples/WebApp-OpenIDConnect-DotNet/blob/master/WebApp-OpenIDConnect-DotNet/App_Start/Startup.Auth.cs

我已经添加了owin包:

PM> Install-Package Microsoft.Owin.Host.SystemWeb -Prerelease
Installing NuGet package Microsoft.Owin.Host.SystemWeb.3.0.1.
Successfully installed 'Microsoft.Owin.Host.SystemWeb.3.0.1' to WebApplication2.
PM> Install-Package Owin.Extensions
Installing NuGet package Owin.Extensions.0.8.5.
Successfully installed 'Owin.Extensions.0.8.5' to WebApplication2.

然而,Visual Studio尚未检测到Usings

using Owin;
using Microsoft.Owin.Security;
using Microsoft.Owin.Security.Cookies;
using Microsoft.Owin.Security.OpenIdConnect;

当我检查参考资料是否存在时,我知道它已经发生了很大的变化,但我如何才能使这个参考资料发挥作用?

project.json有依赖项:

{
  "webroot": "wwwroot",
  "userSecretsId": "aspnet5-WebApplication2-93831a1b-8997-4395-9587-461f520d1546",
  "version": "1.0.0-*",
  "dependencies": {
    "EntityFramework.SqlServer": "7.0.0-beta4",
    "EntityFramework.Commands": "7.0.0-beta4",
    "Microsoft.AspNet.Mvc": "6.0.0-beta4",
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta4",
    "Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta4",
    "Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta4",
    "Microsoft.AspNet.Authentication.Google": "1.0.0-beta4",
    "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta4",
    "Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta4",
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta4",
    "Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta4",
    "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta4",
    "Microsoft.AspNet.Server.IIS": "1.0.0-beta4",
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta4",
    "Microsoft.AspNet.StaticFiles": "1.0.0-beta4",
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta4",
    "Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta4",
    "Microsoft.Framework.ConfigurationModel.UserSecrets": "1.0.0-beta4",
    "Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-beta4",
    "Microsoft.Framework.Logging": "1.0.0-beta4",
    "Microsoft.Framework.Logging.Console": "1.0.0-beta4",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta4",
    "Microsoft.AspNet.Identity.Owin": "2.2.1",
    "Microsoft.Owin.Host.SystemWeb": "3.0.1",
    "Owin.Extensions": "0.8.5"
  },
  "commands": {
    "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000",
    "gen": "Microsoft.Framework.CodeGeneration",
    "ef": "EntityFramework.Commands"
  },
  "frameworks": {
    "dnx451": { } //,
    //"dnxcore50": { }
  },
  "exclude": [
    "wwwroot",
    "node_modules",
    "bower_components"
  ],
  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "scripts": {
    "postrestore": [ "npm install", "bower install" ],
    "prepare": [ "gulp copy" ]
  }
}

如何在asp.net 5应用程序中使用OWIN

我认为您必须先运行恢复,然后才能对此执行任何操作。dnu restore应该工作。。。。如果您在visualstudio中,右键单击解决方案,进入nuget管理器并恢复包

您的示例在vnext中并不完全有用。

我认为您不应该将OWIN DLL与asp.net 5一起使用。我读到OWIN还没有完全移植到新的框架中。

请参阅vnext上的OpenId示例,可能会有所帮助。