Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: ASP.NET MVC - Model 1:N

C# .NET .NET (C# a Visual Basic) ASP.NET MVC - Model 1:N American English version English version

Aktivity (1)
Avatar
Andrej Farkaš:5.5.2014 11:17

Ahojte,
učím sa ASP.NET MVC a snažím sa trochu upraviť tunajší tutoriál. Chcem aby, každý článok spadal do nejakej kategórie, takže mám dve triedy Article a Category:

    public class Category
    {
        [Key]
        public int Id { get; set; }

        [Required]
        [Display(Name = "Názov")]
        public string Name { get; set; }

        public virtual ICollection<Article> Articles { get; set; }
    }

 public class Article
    {
        [Key]
        public int Id { get; set; }

        [AllowHtml]
        [Required]
        [Display(Name="Obsah")]
        public string Content { get; set; }

        [Required]
        [Display(Name = "Nadpis")]
        public string Title { get; set; }

        [Required]
        [Display(Name = "Popis")]
        public string Description { get; set; }

        [HiddenInput(DisplayValue=false)]
        public DateTime Created { get; set; }

        public int CategoryId { get; set; }

        public virtual Category Category { get; set; }
    }

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext()
            : base("DefaultConnection")
        {
        }

        public System.Data.Entity.DbSet<andrejfarkas.Models.Article> Articles { get; set; }
        public System.Data.Entity.DbSet<andrejfarkas.Models.Category> Categories { get; set; }
    }

V zozname článkov, chcem zobrazovať kategórie a podľa nich filtrovať. Je správny spôsob posielať do view ako Model daný DbContext? A ešte jedna otázka: sú tie modely v poriadku?

Vďaka za odpoveď.

Odpovědět 5.5.2014 11:17
Live. Love. Learn.
Avatar
Lako
Člen
Avatar
Odpovídá na Andrej Farkaš
Lako:5.5.2014 14:20

Modely se zdají být v pořádku.. DbContext do view neposílej..
Pokud to chceš udělat uplně správně (když bude aplikace větší, tak se ti to bude hodit), udělej si pro každé view nový viewModel. V controlleru naplň viewModel daty, které sosneš z toho dbContextu..

 
Nahoru Odpovědět  +1 5.5.2014 14:20
Avatar
Odpovídá na Lako
Andrej Farkaš:5.5.2014 14:25

Aj som si myslel, ďakujem :)

Nahoru Odpovědět 5.5.2014 14:25
Live. Love. Learn.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.