如何将Identity 2.0用户添加到对象

埃文·莫里森(Evan Morrison)

因此,我正在尝试掌握EF6并将其Identity 2.0用于建立多对多关系。它是Visual Studio 2013和MVC 5模板。

我有一个具有以下模型的新MVC应用程序:

public class Meeting
{
    public Guid MeetingID { get; set; }
    public string Title { get; set; }
    public virtual ICollection<ApplicationUser> Attendees { get; set; }
}

public class ApplicationUser : IdentityUser
{
    public ICollection<Meeting> Meetings { get; set; } 
}

然后,我搭建了一个控制器并查看的视图Meetings现在,举例来说,如果我只是想将每个useras添加attendee到我的meeting,我可以想象我可以将Create动作修改为如下所示:

public ActionResult Create(Meeting meeting)
{
    if (ModelState.IsValid)
    {
        meeting.MeetingID = Guid.NewGuid();
        db.Users.ForEachAsync(u => meeting.Attendees.Add(u));
        db.Meetings.Add(meeting);
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    else...
}

但是,我认为它没有用,因为我看不到它LocalDB,如果将其添加到会议的详细信息视图中,将无法获得任何结果:

@{foreach (var item in Model.Attendees)
{
    <li>@item.UserName</li>
}}

最后一点,我在LocalDB中有两个用户,分别是test和test2。

什么教程或文档可以帮助我完成这项工作?

* 编辑 *

所以我尝试了您的建议(我会承认,我不熟悉异步和等待以及如何实现它),我不得不修改控制器以允许我使用等待,所以我不确定是否在做现在可以正确地进行此操作,但是我可以编译以下内容,并且出现“对象引用未设置为对象实例”的运行时错误:

    public async Task<ActionResult> Create(Meeting meeting)
    {
        if (ModelState.IsValid)
        {
            meeting.MeetingID = Guid.NewGuid();
            await db.Users.ForEachAsync(u => meeting.Attendees.Add(u));
            db.Meetings.Add(meeting);
            db.SaveChanges();

(是否有可能在Entity Framework上缺少我的模型的某些设置?该项目正是上面显示的代码加上默认值。)

克里斯·普拉特

你要踢自己:)

(击鼓)

您忘了在行await添加ForEachAsync

await db.Users.ForEachAsync(u => meeting.Attendees.Add(u));

如果没有await使应用程序愉快地继续运行并保存记录,则所有操作均在该异步过程完成之前进行。

更新

您很可能尚未初始化Attendees集合。只需List<ApplicationUser>在构造函数中将其设置为新的即可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular2:如何将 .map() 添加到 Observable API 对象?

来自分类Dev

如何将ProxyPassReverse添加到apache2

来自分类Dev

python将2个对象或对象添加到列表

来自分类Dev

如何将文本框(用户名,密码)添加到Yii2 NavBar?

来自分类Dev

如何将声明的整数{2,7,23,52,113} 添加到相等的用户输入数?

来自分类Dev

如何将用户定义的对象添加到LinkedList?

来自分类Dev

将2个对象添加到列表

来自分类Dev

ggplot2:无法将`添加到ggplot对象

来自分类Dev

如何将2个或更多3D对象添加到HTML 5画布?

来自分类Dev

Unity - 如何将游戏对象添加到数组并附加 RigidBody2D 以便它们上下移动

来自分类Dev

如何将特征提取器网络(例如 mobilenetv2)添加到 tensorflow 的对象检测 API

来自分类Dev

在Symfony2中,如何将会话添加到匿名用户

来自分类Dev

如何将用户制作的脚本添加到 EC2 ubuntu?

来自分类Dev

将类添加到对象1,等待,在for循环中将类添加到对象2

来自分类Dev

GraphQl-如何将当前用户添加到变异对象

来自分类Dev

使用Asp.Net Identity 2将用户添加到角色后,如何使.AspNet.ApplicationCookie无效?

来自分类Dev

如何将新组添加到root用户?

来自分类Dev

如何将新组添加到root用户?

来自分类Dev

如何将ldap组添加到系统用户?

来自分类Dev

WSO2 Identity Server:在注册时自动将用户添加到角色

来自分类Dev

Yii2-如何将CSS类添加到ActiveForm字段

来自分类Dev

Swift 2如何将授权标头添加到POST请求

来自分类Dev

如何将GET参数添加到django-tables2 LinkColumn

来自分类Dev

如何将Yii2 jui datepicker添加到GridView中的过滤字段

来自分类Dev

如何将Google Analytics(分析)事件标签添加到Angulartics2?

来自分类Dev

如何将MediaType添加到MappingJackson2HttpMessageConverter而不是RestTemplate

来自分类Dev

如何将精灵添加到Box2d主体?

来自分类Dev

如何将字段添加到log4j2的JSON日志

来自分类Dev

Android Studio:如何将项目从listview1添加到listview2 onClick

Related 相关文章

  1. 1

    Angular2:如何将 .map() 添加到 Observable API 对象?

  2. 2

    如何将ProxyPassReverse添加到apache2

  3. 3

    python将2个对象或对象添加到列表

  4. 4

    如何将文本框(用户名,密码)添加到Yii2 NavBar?

  5. 5

    如何将声明的整数{2,7,23,52,113} 添加到相等的用户输入数?

  6. 6

    如何将用户定义的对象添加到LinkedList?

  7. 7

    将2个对象添加到列表

  8. 8

    ggplot2:无法将`添加到ggplot对象

  9. 9

    如何将2个或更多3D对象添加到HTML 5画布?

  10. 10

    Unity - 如何将游戏对象添加到数组并附加 RigidBody2D 以便它们上下移动

  11. 11

    如何将特征提取器网络(例如 mobilenetv2)添加到 tensorflow 的对象检测 API

  12. 12

    在Symfony2中,如何将会话添加到匿名用户

  13. 13

    如何将用户制作的脚本添加到 EC2 ubuntu?

  14. 14

    将类添加到对象1,等待,在for循环中将类添加到对象2

  15. 15

    GraphQl-如何将当前用户添加到变异对象

  16. 16

    使用Asp.Net Identity 2将用户添加到角色后,如何使.AspNet.ApplicationCookie无效?

  17. 17

    如何将新组添加到root用户?

  18. 18

    如何将新组添加到root用户?

  19. 19

    如何将ldap组添加到系统用户?

  20. 20

    WSO2 Identity Server:在注册时自动将用户添加到角色

  21. 21

    Yii2-如何将CSS类添加到ActiveForm字段

  22. 22

    Swift 2如何将授权标头添加到POST请求

  23. 23

    如何将GET参数添加到django-tables2 LinkColumn

  24. 24

    如何将Yii2 jui datepicker添加到GridView中的过滤字段

  25. 25

    如何将Google Analytics(分析)事件标签添加到Angulartics2?

  26. 26

    如何将MediaType添加到MappingJackson2HttpMessageConverter而不是RestTemplate

  27. 27

    如何将精灵添加到Box2d主体?

  28. 28

    如何将字段添加到log4j2的JSON日志

  29. 29

    Android Studio:如何将项目从listview1添加到listview2 onClick

热门标签

归档