我想在本地IIS服务器和Azure上使用Entity Framework的Web应用程序MVC 5。另外,两个出版物。
发布到IIS(FileSystem)时,将显示该应用程序,但不会与数据库进行交互。
我使用Database First创建了一个项目(ADO.NET实体数据模型 - > Databes的EF Designer)
已生成上下文
public PriceProductsDBEntities ()
: Base ( "name = PriceProductsDBEntities")
{
}
以及webconfig中的连接字符串。
<Add name = "PriceProductsDBEntities" connectionString = "metadata =
res: //*/ProduktModel.csdl | res: //*/ProduktModel.ssdl | res:
//*/ProduktModel.msl; provider = System.Data.SqlClient; provider
connection string = & quot; data source = MICHAL \ SQLEXPRESS; initial
catalog = PriceProductsDB; Integrated Security = True;
MultipleActiveResultSets = True; app = EntityFramework & quot; "
providerName = "System.Data.EntityClient" />
我在google搜索,很多人建议添加一个连接参数AttachDBFilename = | DataDirectory | PriceProductsDB.mdf遗憾的是,即使在按下&#34;显示所有文件&#34;后,构建文件夹App_Data仍然为空。
我尝试手动将数据库复制到 App_data 然后按下&#34;显示所有文件&#34;在我看来并在项目中按了Include,但这是另外两个关系。
我的猜测是你必须以某种方式转换由添加到 App_Data 文件夹的实体生成的连接字符串,然后发布到IIS,应用程序将与数据库进行交互。
至于Azure版本有试用版(免费)可供发布。我在Azure上发布了您的应用程序,它与IIS的情况相同。但是应用程序不显示与数据库的交互。