Dav*_*idR 13 configuration web-config entity-framework-4 entity-framework-4.1 asp.net-mvc-3
我需要一个有效的SQL Server 2008连接字符串,用于Entity Framework 4.1代码优先项目.我现在将它用于MVC 3.
现在它仍然很简单,只有1个项目,3个简单的模型类......
我只能找到其他一切,比如Sql Express,网络上的CE连接......
在web.config
("ApplicationServices")中按名称查找它是可以的,因为当我尝试使用时,我得到了特定的错误.
我能得到的最好的是:
无法加载指定的元数据资源.
我也试着给它,metadata=res://MyWebProject/MyWebProject.csdl| ...
但没有成功.
所以它不会为我创建数据库 - 即使没有命中OnModelCreating(DbModelBuilder modelBuilder)
方法.
如果我尝试使用像我在SQL Server Express中找到的"老式"连接,它会错过元数据.
感谢您的帮助.
J. *_*hon 34
"Code-First"的概念是,您不必处理连接字符串中提到的.csdl,.ssdl和.msl文件.如果未在其他地方指定,DbContext将按照您的描述在web.config中查找连接字符串.DbContext类的构造函数将接受一个名称 - 值对,指定web.config中连接字符串的名称.例如:
<connectionStrings>
<add name="ConnectionName"
providerName="System.Data.SqlClient"
connectionString="Server=ServerName;Database=DatabaseName;Integrated Security=True;" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
可以在您的上下文中引用:
class MyContext : DbContext
{
public MyContext() : base("name=ConnectionName") { }
...
}
Run Code Online (Sandbox Code Playgroud)
我提供的示例连接字符串实际上是用于SQL Server数据库.指定ProviderName非常重要,因为"Code-First"要求它生成相应的.ssdl-File(存储架构).
归档时间: |
|
查看次数: |
25171 次 |
最近记录: |