如何在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" ]
}
}
我认为您必须先运行恢复,然后才能对此执行任何操作。dnu restore
应该工作。。。。如果您在visualstudio中,右键单击解决方案,进入nuget管理器并恢复包
您的示例在vnext中并不完全有用。
我认为您不应该将OWIN DLL与asp.net 5一起使用。我读到OWIN还没有完全移植到新的框架中。
请参阅vnext上的OpenId示例,可能会有所帮助。