最近尝试code first。
code first创建的数据库好像都是采用windows身份验证登录的,在connectionStrings中写上uid和pwd也没效果,网上所有ef code first的教程connectionStrings里都是没写用户名和密码的。sql server监测看到是entity framework登录的数据库。
而且尝试在数据库自动创建后,再到sql server里增加一个用户,connectionStrings里也添加用户名和密码,还是不行,没有使用建立的用户登录。
如果最终开发完毕,把数据库移植到服务器上,总得要建个数据库的登录账号吧,不能采用系统账号登录吧,人家也不让啊。这个怎么办。
现在也确实有点问题,采用vs的服务器运行网站没问题,采用iis运行就说数据库无法登录,要将应用程序池的标识改成localsystem,原来db first设计模式不需要这样的。
是ef就是采用ef自己账号登录数据库,还是其他什么原因,现在有点搞不明白了
------解决方案--------------------------------------------------------
链接字符串和orm有啥关系
public Context()
: base(CONNECTION_STRING)
CONNECTION_STRING你可以自己定啊
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
我也遇到过这样的问题,http://blog.csdn.net/guhuojingling/article/details/7266638
希望能帮到你
------解决方案--------------------------------------------------------
推荐你把连接串放在app.config里,就象通常我们使用连接串是一样的。由于Code-First有许多的命名约定,所以你的连接串也需要按照一定的方式命名。
第一种方法:在app.config里定义的连接串,使用一个与你的DbContext派生类同名的连接名。
假设DingrainContext派生自DbContext,则定义如下的一个串,这样EF在加载时,会自动寻找该连接串。
- XML code
<connectionStrings> <add name="DingrainContext" connectionString="Data Source=xxx\SQL_Instance;Database=Jimmy;Integrated Security=True" providerName="System.Data.SqlClient"/> </connectionStrings>