Как указать имя для конфигурации объекта - PullRequest
0 голосов
/ 30 июня 2010

Я использую первый код в Entity Framework 4, Entity Framework Feature CTP 3

Можно ли указать имя конфигурации объекта? По сути, изменить имя таблицы с «xxxSet» на имя по моему выбору?

Ответы [ 2 ]

1 голос
/ 30 июня 2010

Найдено Документация .Вы хотите сделать что-то вроде:

public class BloggingModel : ObjectContext
{
    public BloggingModel(EntityConnection connection)
        : base(connection)
    {
        DefaultContainerName = "BloggingModel";
    }

    public IObjectSet<User> Users   // ObjectSet name -- you can call it whatever you want
    {
        get { return base.CreateObjectSet<User>(); }
    }
}

class UserConfiguration : EntityConfiguration<User>
{
    public UserConfiguration() 
    {
        Property(u => u.Password).HasMaxLength(15).IsRequired();

        Relationship(u => u.AuthoredPosts).FromProperty(p => p.Author);
        Relationship(u => u.PostedPosts).FromProperty(p => p.Poster);

        MapHierarchy( 
            u => EntityMap.Row( 
                EntityMap.Column(u.ID, "uid"),
                EntityMap.Column(u.Password)
            )
        ).ToTable("Users");  // DB table name -- again, anything you like
    }
}

Опять же, смотрите связанный пост для полной информации.

0 голосов
/ 30 июня 2010

Вы можете изменить его из конструктора Visual Studio (простой способ) или из файла .edmx (если вы знаете, что там делаете), насколько я помню. Также попробуйте обновить до .NET 4.0 и EF4, который был выпущен около 2 месяцев назад, поэтому забудьте о CTP (есть экспресс-версии Visual C # 2010 или Web Developer 2010, которые вы можете использовать бесплатно). Разработчик в этой версии является более «полным», чем CTP, и знает, как автоматически называть сущности (множественное число).

Это относится к EF, а не к Linq2Sql (что-то похоже на EF), но я не знаю точно, как изменить там имена (хотя наверняка должен быть способ, который должен быть почти таким же что касается EF).

Ура! * * 1005

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...