[英]Entity Framework creates a database with a wrong name
我的解决方案中有两个项目:
两个项目都配置为连接到SQL Server,并具有在app/web.config
定义的相同连接字符串:
<add name="AppContext"
providerName="System.Data.SqlClient"
connectionString="Data Source=localhost\SQLEXPRESS;Database=XYZAC;Integrated Security=True" />
该问题仅在控制台应用程序中发生。 该Web应用程序会正确创建XYZAC
数据库。 但是,控制台应用程序使用Namespace.AppContext
的名称创建了一个数据库,这根本不是我所需要的。 因此,这些项目之间没有通信。
我尝试在控制台应用程序的连接字符串中将Database=
更改为Initial Catalog=
,但没有任何改变。
这可能是什么原因? 因为API是通过IIS APPPOOL\\XYZAC
用户登录,而应用程序是通过WINSRV\\Administrator
登录,会发生这种情况吗? 似乎不太可能,因为两者具有几乎相同的权限组并可以访问所有内容,但是我不确定还有其他原因。
我在这里做错了什么?
编辑 :我正在这两个项目之间共享数据库模型。 我将尝试将连接字符串硬编码到构造函数中。
尝试从创建的xyz数据库到控制台应用程序的脚手架,看看它是否与脚手架上下文连接。
像这样硬编码相同的字符串可以解决问题:
public AppContext() : base("Sql n stuff;XYZAC")
凉。 只要有效,对不对?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.