Невозможно получить метаданные

MVC4 + Entity Framework 4.4 + MySql + POCO/Code First

Я настраиваю вышеупомянутую конфигурацию ... вот мои классы:

namespace BTD.DataContext
{
public class BTDContext : DbContext
{

    public BTDContext()
        : base("name=BTDContext")
    {

    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);

        //modelBuilder.Conventions.Remove<System.Data.Entity.Infrastructure.IncludeMetadataConvention>();
    }

    public DbSet<Product> Products { get; set; }

    public DbSet<ProductImage> ProductImages { get; set; }        


}
}

namespace BTD.Data
{
[Table("Product")]
public class Product
{
    [Key]
    public long ProductId { get; set; }

    [DisplayName("Manufacturer")]
    public int? ManufacturerId { get; set; }

    [Required]
    [StringLength(150)]
    public string Name { get; set; }

    [Required]
    [DataType(DataType.MultilineText)]
    public string Description { get; set; }

    [Required]
    [StringLength(120)]
    public string URL { get; set; }

    [Required]
    [StringLength(75)]
    [DisplayName("Meta Title")]
    public string MetaTitle { get; set; }

    [DataType(DataType.MultilineText)]
    [DisplayName("Meta Description")]
    public string MetaDescription { get; set; }

    [Required]
    [StringLength(25)]
    public string Status { get; set; }

    [DisplayName("Create Date/Time")]
    public DateTime CreateDateTime { get; set; }

    [DisplayName("Edit Date/Time")]
    public DateTime EditDateTime { get; set; }
}

[Table("ProductImage")]
public class ProductImage
{
    [Key]
    public long ProductImageId { get; set; }

    public long ProductId { get; set; }

    public long? ProductVariantId { get; set; }

    [Required]
    public byte[] Image { get; set; }

    public bool PrimaryImage { get; set; }

    public DateTime CreateDateTime { get; set; }

    public DateTime EditDateTime { get; set; }

}
}

Here is my web.config setup...

<connectionStrings>
<add name="BTDContext" connectionString="Server=localhost;Port=3306;Database=btd;User Id=root;Password=mypassword;" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
The database AND tables already exist... I'm still pretty new with mvc but was using this tutorial

Приложение работает нормально ... однако, когда я пытаюсь добавить контроллер, используя Product (BTD.Data) в качестве класса модели и BTDContext (BTD.DataContext) в качестве класса контекста данных, я получаю следующую ошибку:

Unable to retrieve metadata for BTD.Data.Product using the same DbCompiledModel to create context against different types of database servers is not supported. Instead, create a separate DbCompiledModel for each type of server being used.

Я в полной растерянности - я искал в Google почти все варианты сообщения об ошибке выше, о котором я могу думать, но безрезультатно.

Here are the things i can verify...

MySql is working properly I'm using MySql Connector version 6.5.4 and have created other ASP.net web forms + entity framework applications with ZERO problems

I have also tried including/removing this in my web.config:

<system.data>
<DbProviderFactories>
  <remove invariant="MySql.Data.MySqlClient"/>
  <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>

Я буквально работал над этой ошибкой в течение нескольких дней, и теперь я готов заплатить кому-нибудь за ее устранение ... без шуток ... Я действительно люблю использовать MVC 4 и Razor - I Я был очень взволнован, чтобы начать работу над этим, но теперь я довольно обескуражен - я действительно ценю любую помощь / руководство по этому вопросу!

Также обратите внимание - я использую Entityframework от Nuget ...

Another Note

Я использовал шаблон Visual Studio по умолчанию, который создает ваш проект MVC со страницами учетной записи и другим материалом. Я ПРОСТО удалил все ссылки на добавленные файлы, потому что они пытались использовать & quot; DefaultConnection & quot; который не существует - поэтому я подумал, что эти файлы могут быть причиной ошибки - однако все же не повезло после их удаления -

Я просто хотел, чтобы все знали, что я использую шаблон проекта Visual Studio MVC, который предварительно создает кучу файлов. Я буду пытаться воссоздать все это из пустого проекта MVC, в котором нет этих файлов - я обновлю его, как только протестирую

UPDATE TO USING VS MVC Basic Template: Та же самая ошибка привела - все еще нет решения

ANOTHER PERSON EXPERIENCING THE SAME PROBLEM

Прямо здесь есть еще один вопрос, связанный с stackoverflow - однако я попробовал его решение безрезультатно - может быть, кто-то еще, кто имеет эту же проблему, может извлечь выгоду из ссылки

UPDATE

Недавно я только что попытался поместить это в MS Sql Server, и леса представлений добавляются нормально без ошибок - поэтому я не уверен, является ли это моей базой данных MySql или строкой соединения или чем-то ... сводит меня с ума ...

Other References

Похоже, что у кого-то еще есть те же проблемы, что и у меня - единственное различие заключается в том, что они используют сервер SQL - я попытался настроить весь свой код, чтобы следовать рекомендациям поэтот стекопоток вопрос / ответ здесь но пока безрезультатно

POSSIBLE FIX???

Так что это странно ... после подключения его к MS Sql Server и добавления контроллера, а затем возврата строки подключения к MySql, это на самом деле работает с MySql ... какого черта! ??

Таким образом, кажется, что, когда вы пытаетесь добавить свой контроллер и скаффолдинг представления (это правильная фраза?) Добавляется С строкой соединения mysql, это терпит неудачу ... однако, если вы подключаете его к базе данных sql server, генерируйте скаффолдинг / контроллер, а затем вернуться к строке подключения MySQL это работает ....?!?!

Ответы на вопрос(5)

Ваш ответ на вопрос