Comment puis-je utiliser EF pour créer automatiquement une base de données et du référentiel dans ASP.NET MVC?
J'ai commencé à apprendre ASP.NET MVC, et à cette époque de l'étudiant, je veux créer un simple blog site. J'ai décidé d'utiliser ASP.NET MVC et ORM Entity Framework. Probablement que vous avez quelques liens utiles à propos de ce thème?
J'ai essayé de démarrer à partir de la création de Modèle de code de la première.
j'ai 3 classes Post, l'Utilisateur(l'Utilisateur peut être admin), des Commentaires.
Il vous plaît j'ai besoin d'aide pour faire les relations entre les modèles de base de données. J'ai un code comme ceci maintenant:
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public List<Comment> Comments { get; set; }
public DateTime PublishDate { get; set; }
}
public class User
{
public readonly bool IsAdmin { get; set; }
public string FirstName { get; set; }
public string SecondName { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public DateTime DateOfBirthday { get; set; }
public string Country { get; set; }
public string City { get; set; }
public List<Post> Posts { get; set; }
public List<Comment> Comments { get; set; }
}
public class Comment
{
public int CommentId { get; set; }
public string UserName { get; set; }
public string Content { get; set; }
public DateTime PublishDate { get; set; }
}
Ce sont mes classes pour créer des tables de base de données, mais je ne suis pas sûr de savoir comment faire des relations plusieurs-à-un.
Est-il correct de faire la Liste des Commentaires pour le Post ou il suffit d'écrire int CommentID?? Je n'ai jamais utiliser de base de données très profond, juste vu quelques leçons. Quelqu'un peut-il à conseiller sur la façon de faire de dépôt ou de corriger mon code de Modèle?
Merci beaucoup!
+1 - bienvenue sur StackOverflow :o)
OriginalL'auteur BeginerDummy | 2012-03-15
Vous devez vous connecter pour publier un commentaire.
Il y a beaucoup de bons tutoriels sur comment faire cela. Celle-ci, par exemple:
http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application
De répondre à certaines de vos questions, oui, le nom CommentId est correct; tous les EF classe que vous voulez stockées dans la base de données doit avoir un champ appelé Id ou un champ appelé MyClassId ("Maclasse" est le nom de votre classe). J'ai trouvé que celui-ci rend votre vie plus facile, surtout quand on fait des jointures.
Sauf si vous avez des relations que les EF ne peut pas déterminer automatiquement, vous n'avez pas à spécifier les relations de vous-même: EF détecte automatiquement la bonne relation pour vous. Je ne vois rien dans votre code EF ne peut pas gérer automatiquement.
Une chose que vous avez à faire est de faire de la
List<Post>
etList<Comment>
champs virtuels; de cette manière, l'EF peut fournir la base de données adossés à des relations.Bonne chance.
À côté de cette conteneurs et l'ID que j'ai déjà défini.Avez-vous trouvé quelque chose de mal ou peut-u avoir une bonne conseille?Puis-je commencer à créer une base de données avec SQL serveur de Base de données?Et j'ai ce sujet de référentiel?J'ai écrits à seulement 3 méthodes qui renvoient une collection de chacune des classes
OriginalL'auteur Ethan Brown
J'ai apprécié la La construction d'un MVC 3 App avec le Premier Code et Entity Framework 4.1
tutoriel. Inclut une vidéo que j'ai trouvé très facile à suivre.
OriginalL'auteur DaveB