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

Dodawanie danych do dwóch Tabel w jednym widoku .

0 głosów
63 wizyt
pytanie zadane 10 maja w C# i .NET przez marines231 Nowicjusz (140 p.)

Witam . Realizuje projekt zadany przez nauczyciela w Visual Studio 2017 ASP.NET MVC z użyciem Entity Framework . Utworzyłem bazę danych , wgrałem ją przy pomocy EF do projektu .

Mam już proste logowanie i po zalogowaniu chciałbym wprowadzać dane do tabeli "osoby" i "logowanie" w jednym widoku .

Wykonywałem wiele poradników znalezionych w sieci ale bez skutku . Pierwsza sprawa :
- Jeśli mam w Models pliki nazwa_tabeli.cs utworzone automatycznie przez EF to muszę tworzyć nową klasę która połączy dwie tabele a jeśli tak to co należy tam umieścić?
- Czy kontroler może być wygenerowany na podstawie powyższego modelu lub tych gotowych klas czy trzeba go pisać od zera?
- Korzystałem z tych źródeł , bez skutku:
https://www.youtube.com/watch?v=DLDrTxGpA1k
https://www.codeproject.com/Tips/651495/Inserting-Data-into-Multiple-Tables-using-Code-Fir
https://stackoverflow.com/questions/23429888/best-way-to-insert-data-to-multiple-table-mvc-asp
https://www.c-sharpcorner.com/UploadFile/219d4d/working-with-multiple-tables-in-mvc-using-entity-framework/
 

Pliki osoby.cs oraz logowanie.cs
logowanie:

namespace prace_dyplomowe.Models
{
    using System;
    using System.Collections.Generic;
    
    public partial class logowanie
    {
        public int id_logowanie { getset; }
        public string login { getset; }
        public string haslo { getset; }
        public int id_osoby { getset; }
    
        public virtual osoby osoby { getset; }
    }
}

osoby:

namespace prace_dyplomowe.Models
{
    using System;
    using System.Collections.Generic;
    
    public partial class osoby
    {
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage""CA2214:DoNotCallOverridableMethodsInConstructors")]
        public osoby()
        {
            this.dziekan = new HashSet<dziekan>();
            this.logowanie = new HashSet<logowanie>();
            this.promotor = new HashSet<promotor>();
            this.student = new HashSet<student>();
        }
    
        public int id_osoby { getset; }
        public string imie { getset; }
        public string nazwisko { getset; }
        public int nr_identyfikacyjny { getset; }
        public int id_uprawnienia { getset; }
    
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage""CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<dziekan> dziekan { getset; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage""CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<logowanie> logowanie { getset; }
        public virtual uprawnienia uprawnienia { getset; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage""CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<promotor> promotor { getset; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage""CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<student> student { getset; }
    }
}

1 odpowiedź

0 głosów
odpowiedź 12 maja przez pulson666 Dyskutant (8,450 p.)
Oczywiście, że możesz.

Robiąc brzydko to używając klasy encji na widoku Logowanie, masz dostęp poprzez klucz obcy do tabeli osoby.

Robiąc dobrze, tworzysz swój własny model w którym masz wszystkie rzeczy jakie Cie interesują np Imię nazwisko login i hasło. Ten model zwracasz na widok uzupełniasz danymi i wysyłasz do kontrolera. W kontrolerze dzieje się już reszta, czyli połączenie tych danych do istniejącego modelu

Podobne pytania

0 głosów
0 odpowiedzi 133 wizyt
0 głosów
1 odpowiedź 45 wizyt
–1 głos
1 odpowiedź 94 wizyt
pytanie zadane 8 listopada 2016 w C# i .NET przez brajanek Nowicjusz (130 p.)
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.SPOJ

54,387 zapytań

98,241 odpowiedzi

202,065 komentarzy

26,700 pasjonatów

Przeglądających: 183
Pasjonatów: 3 Gości: 180

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...