ASP.NET MVC5 在用户注册时自动填充第二个表

Posted

技术标签:

【中文标题】ASP.NET MVC5 在用户注册时自动填充第二个表【英文标题】:ASP.NET MVC5 Auto Fill Second Table on User Registration 【发布时间】:2017-10-18 04:53:40 【问题描述】:

我对 Visual Studio、C# 和 MVC 框架非常陌生,但遇到了一个我无法自行解决的问题。

我已经在 Visual Studio 中使用单用户身份验证启动了一个新的 Web 项目。 因此,Visual Studio 生成了用户注册到我的网站所需的所有内容 - Perfecto。

但是,我有另一个用户数据表,每当用户注册时,我都需要用默认数据填充它。

对于每个用户,这些将始终以相同的方式开始 - 除了 ID 和外部 AspNetUserId。 (你知道,直到他们使用该应用程序)。

这是注册用户的预生成代码。

如何编辑它以同时从我的 PDC_UserController 调用 create 方法以将数据添加到我的第二个表?

这是必须已经为 PDC_User 表指定默认值的代码。

如何从 AccountController 的 Register 方法调用 PDC_UserController 的 Create 方法? 如何编辑 PDC_UserController Create 方法以从 AccountController 获取 AspNetUserId 并将其他值设置为默认值?

感谢您的帮助,我希望这不会太令人困惑

【问题讨论】:

【参考方案1】:

您不会调用 create 方法...只需在您已经拥有用户名和其他可用数据的帐户控制器中调用 db.add 即可。类似于下面的内容,然后保存更改。如果您需要更多细节,可以查找示例。

db.PDC_User.Add(new PDC_User
   DbRowName = defaultValue,
   *etc*

【讨论】:

好吧,这更有意义,但我对 db 仍然很模糊我很确定它是 var db = new ____() 希望我能弄明白 - 似乎它应该不难找 db 是一个代表你的数据库的变量,你应该在 Account Controller 的类下声明它。类似于: private DbContextname db = new DbContextname(); 是的!非常感谢!

以上是关于ASP.NET MVC5 在用户注册时自动填充第二个表的主要内容,如果未能解决你的问题,请参考以下文章

asp.net 中的列表框自动填充功能

如何在 OWIN ASP.NET MVC5 中注销用户

asp.net mvc5 如何控制没有权限的页面不显示

ASP.NET MVC5 实现 SQL 查询工具

MVC 5在用户ID文本框更改时自动填充电子邮件文本框

未验证 ASP.NET MVC5 模型