J'ai essayé et c'est comme EF4 CTP5 est totalement ignorant. Quel est le problème?
à l'aide de la section:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration;
using System.Data.Entity.ModelConfiguration.Conventions.Edm;
DbContext:
public class SiteDataContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<BlogFeedback> BlogFeedbacks { get; set; }
public DbSet<BlogCategoryList> BlogCategoryLists { get; set; }
public DbSet<BlogCategory> BlogCategories { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingEntitySetNameConvention>();
base.OnModelCreating(modelBuilder);
}
}
Classes POCO
public class Blog
{...}
public class BlogFeedback
{...}
public class BlogCategoryList
{...}
public class BlogCategory
{...}
Les tableaux générés:
Blogs
BlogCategories
BlogCategoryLists
BlogFeedbacks
Ce dont j'ai besoin:
Blog
BlogCategory
BlogCategoryList
BlogFeedback
Une chose peut être différent est j'ai divisé ma solution en deux projets de Base et le Web. Core a des Modèles, des Services et de tous les le Premier Code. Web a seulement les Contrôleurs et les Vues et une référence à la Base. Le SetInitializer().De la graine() est à l'intérieur d'une fonction dans le coeur, et dans le Web mondial.asax le Cœur.SetInitializer est appelé, afin de garder tous les CTP5 des fonctions à l'intérieur du Noyau. La base de données est recréé ok, les données sont remplis ok, juste la convention tient au PLURIEL les NOMS de TABLE, ignorant la modelBuilder remplacer