• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wiele grup dla jednego użytkownika w bazie danych.

Object Storage Arubacloud
0 głosów
93 wizyt
pytanie zadane 26 grudnia 2020 w C# przez Szyszka Gaduła (3,490 p.)

Witam. Potrzebuję zrobić coś takiego, żeby użytkownik mógł być w wielu grupach na raz. Mam takie dwa modele:

Group.cs:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace Auth.Models
{
    public class Group
    {
        public Group()
        {
            Users = new List<AppUser>();
        }

        [Key]
        public Guid Id { get; set; }
        public string GroupName { get; set; }
        public ICollection<AppUser> Users { get; set; }
    }
}

AppUser.cs:

using System.ComponentModel.DataAnnotations;

namespace Auth.Models
{
    public class AppUser
    {
        [Key]
        public int Id { get; set; }

        [Required(ErrorMessage = "* Nazwa użytkownika jest wymagana")]
        [MinLength(5, ErrorMessage = "* Nazwa użytkownika musi zawierać co najmniej pięć znaków")]
        public string UserName { get; set; }

        [Required(ErrorMessage = "* Hasło jest wymagane")]
        [MinLength(7, ErrorMessage = "* Hasło musi zawierać co najmniej 7 znaków")]
        public string Password { get; set; }

        [Required(ErrorMessage = "* E-mail jest wymagany")]
        public string Email { get; set; }
    }
}

To tworzy mi tabelke Groups, która zawiera kolumny Id oraz GroupName, oraz tabelke Users, która zawiera kolumny Id, UserName, Password, Email, ChatId. Myślałem, że jakoś magicznie do ChatId będzie zapisywać się każde Id grupy, do której należy użytkownik, jednak zapisuje się tam tylko to Id grupy, do której ostatnio dołączył. Listy zapisać się nie da w bazie danych, kompletnie nie mam pomysłu jak mogę zapisać wszystkie grupy :/. Znaczy, mam jeden, aczkolwiek wydaję mi się taki meh, że można zrobić to lepiej. Tylko jak? Dzięki z góry.

1 odpowiedź

0 głosów
odpowiedź 26 grudnia 2020 przez Szyszka Gaduła (3,490 p.)
Działa przy użyciu Many to Many. Jednak zastanawiam się nadal, czy są może jeszcze inne sposoby?

Podobne pytania

0 głosów
3 odpowiedzi 571 wizyt
0 głosów
1 odpowiedź 392 wizyt
pytanie zadane 25 listopada 2020 w Systemy operacyjne, programy przez BarSki13 Obywatel (1,250 p.)
+1 głos
1 odpowiedź 3,229 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...