ja tylko sie przyczepie po raz kolejny do czytaelnosci, bo nawet jesli piszesz kod tylko i wylacznie dla siebie to rob to tak zeby inni go mogli cyztac i to czytac ze zrozumieniem, bo takiego czegos:
foreach (var i in Model)
{
...
var k = i.ToList();
czy takiego
foreach (var v in list1)
{
...
v.Bookings.Add(vs);
To nawet TY za kilka tygodni nie bedziesz w stanie rozkminic, nie mowiac o kims kto siadzie po Tobie do projektu.
Tak samo masz tam list = costam. I potem operujesz na tej liscie. i teraz zeby wiedziec co to za lista to trzeba skrollowac do miejsca deklaracji lub przypisania, ew. czekasz az ci visual studio podpowie.
@foreach (var ck in Model.First())
{
<th>
@ck.Time
</th>
}
z kodu powyzej to jedynie wiadomo ze wyswietla jakis czas. co to ck?? kij wie, tymbardziej ze jest to obiekt z listy Model.First , gdzie slowo first wskazuje ze bedzie to pojedynczy obiekt a nie lista.
Jeszcze raz to, ze kod sie kompiluje i dziala i robi co ma robic nie oznacza ze jest dobrze napisany, bo odlozysz ten projekt na kilka dni/tygodni i ci recze ze do niego nie wrocisz bo w co drugiej linijce bedziesz rozkminial co tu robisz i co to jest k, ck, j czy model.first.
Wygenerowany kod html tej tabeli jest niepoprawny. tagi th sa w srodku td i nie bedzie zgadzac sie ich ilosc co moze sie wysypac na niektrych przegladarkach
I do konca nie jestem przekonany ze on dziala, bo starasz sie wyswietlic elementy listy z listy tych list, co juz pokazuje jak wiele danych wejdzie w jeden wiersz. troche duzo za duzo jak dla mnie.
Plus to co koledzy powiedzieli wyzej. wszystko masz w tym kontrolerze. dla mnie kontroler powinien byc prosty, a wszystko wepchnac w jakis service lub manager, bo teraz jak juz sie napocisz i napiszesz ta swoja aplikacje i zechce ci sie udostepnic API, zeby np. ktos mogl z tego korzystac, no i bedziesz rzezbil wszystko od nowa pod API. a tak jakbys mial wszystko schowane nizej, to API robisz w przyslowiowe 5 minut udostepniajac tylko dane z service w odpowiednim formacie.