如何自定义AspNet Identity 2.0以仅生成我需要的身份表?

时间:2018-02-09 10:22:07

标签: c# asp.net-mvc-5 asp.net-identity

我是Identity 2.0模块的新手,我想控制数据库中由身份模块生成的表格,因为我有时并不需要所有这些表格,甚至有时候也不需要需要在每个表中生成的大多数列。那么,有什么方法可以控制生成的表和列吗?

1 个答案:

答案 0 :(得分:1)

如果不使用,SQL Server中的表便宜。他们并没有真正占用任何空间而且不费力去维护。删除框架为您生成的空表/字段没有意义。这已被多次提出,我没有看到一个好的答案。因为您想要做的事情会给您带来绝对的零利益,并且现在可以增加大量工作,并且可以在您的应用程序之后进行大量维护。

但是,如果您坚持这样做,则需要开始拆分IdentityDbContext - 您需要实现自己的DbContext,其中只包含您想要的表格。然后,您需要实现自己的IUserStorage,可以处理缺少表格。这是一个starting point,用于学习如何实现自定义存储。

您可以找到身份的源代码,复制相关的存储代码并删除您不想要的内容,并为您将无法使用的方法添加NotSupportedException