Ant*_*nen 5 entity-framework connection-string code-first wcf-ria-services ef-code-first
似乎Code First DbContext在编译期间真的使用了给定的ConnectionString吗?我甚至不知道这是怎么可能的,但对我来说似乎是这样.如果我关闭我的本地SQL Server,我收到错误,指出"无法获取DbContext类型的MetadataWorkspace ...".打开SQL Server,一切都编译好了.
这是我的上下文的一部分(我使用的是现有的数据库,是的,我知道,实际上并不是第一个代码)
public class MyContext : DbContext
{
public MyContext() : base("MY_DYNAMIC_CONNECTIONSTRING")
{
Database.SetInitializer<MyContext>(null);
}
...
Run Code Online (Sandbox Code Playgroud)
如果确实如此,那就是一个很大的问题.我怎么能阻止它呢?如果我使用ConnectionString不起作用的单独构建机器怎么办?或者我做错了什么?有什么建议?
WCF RIA Services DbContext不仅在运行时实例化设计时和构建时间:
引自http://jeffhandley.com/archive/2011/06/30/RIAServicesCodeFirst.aspx:
为了在Silverlight项目中生成代码,RIA Services必须在构建时检查您的DbContext,以获取可用的实体类型.
EF CodeFirst独立和RIA服务之间的区别在于我们在设计时也初始化了一个新的DbContext.
如果连接字符串无效或无法建立连接,则显然会得到您提到的异常.
| 归档时间: |
|
| 查看次数: |
3676 次 |
| 最近记录: |