EF только для кода: неверное имя объекта 'dbo.BuildVersion' - PullRequest
1 голос
/ 14 декабря 2011

Я пытаюсь настроить сценарий EF Code-Only с базой данных AdventureWorksLT, но он не работает.

У меня есть эта ошибка:

Invalid object name 'dbo.BuildVersion'

Ошибка возникает из executeReader во внутреннем методе EntityFramework.dll с этим запросом:

SELECT 
[Extent1].[SystemInformationID] AS [SystemInformationID], 
[Extent1].[Database Version] AS [Database Version], 
[Extent1].[VersionDate] AS [VersionDate], 
[Extent1].[ModifiedDate] AS [ModifiedDate]
FROM [dbo].[BuildVersion] AS [Extent1]

Конечно, запрос правильный и возвращает результат.

Итак, почему у меня есть это исключение?

Вот код (я удаляю все условные обозначения):

public class BuildVersionConfiguration : EntityTypeConfiguration<BuildVersion>
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="BuildVersionConfiguration"/> class.
        /// </summary>
        public BuildVersionConfiguration()
        {
            this.ToTable("BuildVersion", "dbo");

            this.HasKey(e => new { e.SystemInformationId, e.DatabaseVersion, e.VersionDate, e.ModifiedDate });

            this.Property(e => e.SystemInformationId).HasColumnName("SystemInformationID").IsRequired();
            this.Property(e => e.DatabaseVersion).HasColumnName("Database Version").IsRequired();
            this.Property(e => e.VersionDate).HasColumnName("VersionDate").IsRequired();
            this.Property(e => e.ModifiedDate).HasColumnName("ModifiedDate").IsRequired();
        }
    }

И ...

public class MyContext : DbContext
    {
        public DbSet<BuildVersion> BuildVersion { get; set; }


        // Methods
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            // Remove conventions

            modelBuilder.Configurations.Add(new BuildVersionConfiguration());
        }
    }

1 Ответ

0 голосов
/ 25 января 2012

Не уверен, что эта ссылка решит вашу проблему.Проблема выглядит аналогично по номинальной стоимости.Дайте ему шанс и посмотрите, решит ли он.

...