我创建了一个新的空MVC
项目,我想为其添加标识。
现在我不知道如何做到这一点以及如何创建数据库和表和类。
我搜索了但是我没有找到任何有用的解决方案来解决我的问题,我找到了一篇文章,用于将ASP.NET身份添加到现有的空ASP.NET网站,但是对于我没有找到的ASP.Net MVC
项目。登记/>
登录
登记表格
用于将用户添加到角色中
删除用户
如何在我自己的数据库中创建表
如何管理用户
答案 0 :(得分:69)
我一直在寻找相同的东西,以下博客文章帮助了我:
http://benfoster.io/blog/aspnet-identity-stripped-bare-mvc-part-1
http://benfoster.io/blog/aspnet-identity-stripped-bare-mvc-part-2
答案 1 :(得分:7)
转到:
打开nuget包管理器Tools > Nuget Package Manager > Package Manager Console
在一个新项目 [1] 。从那里,您可以在PM>
Install-Package Microsoft.AspNet.Identity.Samples -Pre
将为您安装Identity示例。它会询问您是否允许它通过按“A”来改变您的webconfig
,您接受所有更改。
从那时起,您将安装样本标识项目!
注意:它会更改默认命名空间,因此通过“查找和替换”,您可以快速更改项目名称的出现次数(注意,您可能需要进入我的global.aspx
页面documents文件夹 - 在记事本中打开它并在那里更改命名空间!)
[1] :如果您在开发开始时没有这样做,您会发现以下文件将被覆盖(因此请确保您有办法合并您的原件与新的):
Overwrite existing file 'Views\Web.config'.
Overwrite existing file 'Views\Shared\Error.cshtml'.
Overwrite existing file 'Views\Shared\_Layout.cshtml'.
Overwrite existing file 'Views\Home\Index.cshtml'.
Overwrite existing file 'Views\_ViewStart.cshtml'.
Overwrite existing file 'Global.asax.cs'.
Overwrite existing file 'Global.asax'.
Overwrite existing file 'Controllers\HomeController.cs'.
Overwrite existing file 'Content\Site.css'.
Overwrite existing file 'App_Start\RouteConfig.cs'.
Overwrite existing file 'App_Start\FilterConfig.cs'.
Overwrite existing file 'App_Start\BundleConfig.cs'.
答案 2 :(得分:0)
以下文章向您介绍了向应用程序添加ASP.NET标识的基础知识。 http://www.asp.net/identity/overview/getting-started/adding-aspnet-identity-to-an-empty-or-existing-web-forms-project
答案 3 :(得分:0)
您可以从NuGet库中集成ASP.NET Identity。您可以使用NuGet包管理器控制台安装这些包,如下所示:
安装包Microsoft.AspNet.Identity.EntityFramework -Version 2.2.1
安装包Microsoft.AspNet.Identity.Core -Version 2.2.1
安装包Microsoft.AspNet.Identity.OWIN -Version 2.2.1
除此之外,您只需使用默认模板创建一个单独的MVC项目,并在其中将实现ASP.NET标识的类和方法作为参考,以便在新项目中使用这些类。
如果您正在使用带有数据库第一种方法的Entity Framework的现有数据库,那么为ASP.NET标识创建单独的连接字符串和数据上下文。在使用ASP.NET标识时,使用提供程序System.Data.EntityClient
的实体框架使用提供程序System.Data.SqlClient
提供者var express = require('express');
var httpProxy = require('http-proxy');
var vhost = require('vhost');
var app = express();
var proxy = httpProxy.createProxyServer();
app.get('/login', function(req, res) {
var randomNumber=Math.random().toString();
randomNumber=randomNumber.substring(2,randomNumber.length);
var expireDate = new Date();
expireDate.setDate(expireDate.getDate() + 1);
res.cookie('auth', randomNumber, { maxAge: 90000000, domain: 'localhost', httpOnly: false });
console.log('cookie created successfully');
res.send('Login successful');
});
app.use('/api', function(req, res) {
req.headers[ 'Authorization' ] = 'Basic dXNlcjpwYXNzd29yZA==';
console.log("Request cookies: " + req.cookie);
proxy.web(req, res, { target: 'restApiTarget' });
});
// ST application
app.use(vhost('st.localhost', express.static('./st')));
// ACM application
app.use(vhost('acm.localhost', express.static('./acm')));
app.listen(8080, function () {
console.log('Fweb server running on port 8080!');
});
。