当前位置: 首页 > 编程语言 > C#

AspNetUsers(identity)与自定义表的一对多关系分享

时间:2023-04-10 15:17:13 C#

AspNetUsers(identity)与自定义表的一对多关系为Map创建自定义表的一对多关系(一个用户可以有很多地图,但一张地图只能有一个用户)我已经尝试了这个网站上可用的大部分解决方案,也浪费了很多天尝试在网络上找到的其他解决方案。我卡住了。似乎没有什么对我有用。我是MVC和EF的新手,所以基本上我认为我需要一些分步指南。任何人都可以非常友好地为我提供一个新的MVC5项目的初学者指南来实现这一点。谢谢,很抱歉我问了多余的问题。附言。我可以成功地在两个自定义表之间创建关系,但不能在AspNetUsers和我的Map表之间创建关系。非常感谢。我在很多项目中都这样做过。例如,我有一个从ASPNetUsers到通知的一对多关系。所以我有publicvirtualICollectionNotifications{get;放;在IdentityModels.cs的ApplicationUser类中,我的通知类是相反的publicvirtualApplicationUserApplicationUser{get;放;默认情况下,EF将创建从Notification到AspNetUsers的级联删除,这是我不想要的-所以我也有这个modelBuilder.Entity().HasRequired(n=>n.ApplicationUser).WithMany(a=>a.Notifications).HasForeignKey(n=>n.ApplicationUserId).WillCascadeOnDelete(false);请记住,AspNetUSers定义在IdentityModels.cs的ApplicationUser类中扩展,VisualStudio脚手架为您生成。然后将其视为您应用中的任何其他类/表更新–以下是完整模型的示例publicclassApplicationUser:IdentityUser{[StringLength(250,ErrorMessage="Aboutislimitedto250charactersinlength.")]publicstring关于{得到;放;}[StringLength(250,ErrorMessage="Nameislimitedto250charactersinlength.",MinimumLength=3)]publicstringName{get;放;}publicDateTimeDateRegistered{get;放;}publicstringImageUrl{get;放;}publicvirtualICollectionNotifications{get;放;}publicasyncTaskGenerateUserIdentityAsync(UserManagermanager){//注意authenticationType必须匹配CookieAuthenticationOptions.AuthenticationTypevaruserIdentity=awaitmanager.CreateIdentityAsync(this,DefaultAuthenticationTypes.ApplicationCookie);//在此处添加自定义用户声明returnuserIdentity;}}publicclassNotification{publicintID{get;放;公共诠释?CommentId{得到;放;}publicstringApplicationUserId{得到;放;}民众日期时间日期时间{得到;放;}publicboolViewed{get;放;}publicvirtualApplicationUserApplicationUser{get;放;}publicvirtualCommentComment{get;放;}}}http://www.itorian.com/2013/11/customizing-users-profile-to-add-new.html这篇文章包含你的答案这是一个逐步的视觉解决方案(它使用继承):https://practiceaspnet.wordpress.com/2015/04/03/adding-asp-net-identity-to-an-existing-entity-framework-asp-net-web-forms-application/以上是C#的学习教程:AspNetUsers(identity)与自定义表之间的一对多关系共享的所有内容,如果对你有用,需要详细了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权请点击维权联系管理员删除如需转载请注明出处: