添加控制器错误无法检索元数据 [英] Add controller error unable to retrieve metadata

查看:498
本文介绍了添加控制器错误无法检索元数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在VS2012的MVC 4应用程序中添加控制器,如下图所示:





模型:

  using System; 
using System.Collections.Generic;
using System.Linq;
使用System.Web;
using System.Data.Entity;

命名空间MvcDemo.Models
{
public class MovieDB
{
public int ID {get;组; }
public string标题{get;组; }
public string Director {get;组; }
public DateTime Date {get;组; }
}
public class MovieDBContext:DbContext
{
public DbSet< MovieDB>电影{get;组; }
}
}

连接字符串:

 < connectionStrings> 

< add name =DefaultConnection
connectionString =Data Source =(LocalDb)\v11.0; Initial Catalog = aspnet-MvcDemo-20130315191956; Integrated Security = SSPI; AttachDBFilename = | DataDirectory | \aspnet-MvcDemo-20130315191956.mdf
providerName =System.Data.SqlClient/>

< add name =MovieDBContext
connectionString =Data Source = | DataDirectory | \Movies.sdf
providerName =System.Data.SqlServerCe.4.0 />

< / connectionStrings>

点击添加后,会发生此错误:

 无法检索MvcDDemo.Models.MovieDB的元数据。不支持使用
相同的DbCompiledModel为不同类型的
数据库服务器创建上下文.instead,为正在使用的每种类型的服务器创建一个
单独的DbCompiledModel。

有任何建议吗?

解决方案 c> ,第二个 providerName providerName ,然后创建控制器,撤消该操作!



from:这里


I want to add controller in my MVC 4 application in VS2012 as this image:

Model:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;

namespace MvcDemo.Models
{
    public class MovieDB
    {
        public int ID { get; set; }
        public string Title { get; set; }
        public string Director { get; set; }
        public DateTime Date { get; set; }
    }
    public class MovieDBContext : DbContext
    {
        public DbSet<MovieDB> Movies { get; set; }
    }
}

Connection strings:

<connectionStrings>

<add name="DefaultConnection" 
connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcDemo-20130315191956;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-MvcDemo-20130315191956.mdf"
providerName="System.Data.SqlClient" />

<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|\Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>

</connectionStrings>

After clicking "add", this error occurs:

unable to retrieve metadata for 'MvcDDemo.Models.MovieDB'.Using the
same DbCompiledModel to create contexts against different type of
database servers is not supported.instead,create a 
separate DbCompiledModel for each type of server being used.

Any suggestion?

解决方案

In Web.config, set second providerName same as first providerName, and after creating controller, undo that!

from:here

这篇关于添加控制器错误无法检索元数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆