【问题标题】:How to set group of a new user?如何设置新用户组?
【发布时间】:2015-08-25 21:00:50
【问题描述】:

这似乎是一个简单的问题,但我想不出答案。

我在数据库中有一个用户表和组表,如下所示:

如您所见,它们都相互关联。组表包含以下条目:

  1. 管理员
  2. 支持
  3. 采购
  4. 销售

现在我想使用 Entity Framework 使用以下代码添加一个新用户:

private void AddUser()
{
    using (var context = new AzubiTestEntities())
    {
        var user = new Benutzer();

        user.Name = Username;
        user.Passwort = GenerateHashPassword();

        user.Gruppen = ???

        user.Anlegedatum = DateTime.Now;
        user.Loeschdatum = null;
        user.ErstellerID = 1;

        context.Benutzer.Add(user);

        context.SaveChanges();
    }
}

如何设置这个用户的群组?

【问题讨论】:

    标签: c# sql wpf entity-framework


    【解决方案1】:

    由于您错过了 Benutzer 表中的直接一对多外键,例如 gruppenID,我假设您使用的是多对多中间表。

    在这种情况下(您看不到中间外键),您必须从数据库中获取组并将其分配给 user.Gruppen 属性。

    private void AddUser()
    {
        using (var context = new AzubiTestEntities())
        {
            var user = new Benutzer();
            var gruppen = context.Gruppen.First(x => x.GruppenID == [group id]);
    
            user.Name = Username;
            user.Passwort = GenerateHashPassword();
    
            user.Gruppen = gruppen;
    
            user.Anlegedatum = DateTime.Now;
            user.Loeschdatum = null;
            user.ErstellerID = 1;
    
            context.Benutzer.Add(user);
    
            context.SaveChanges();
        }
    }
    

    更多详情:https://msdn.microsoft.com/en-us/data/jj713564.aspx

    【讨论】:

      猜你喜欢
      • 2018-07-10
      • 1970-01-01
      • 2015-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      相关资源
      最近更新 更多