0

我正在使用Visual Studio Express 2012 ( VS ) 和SQLServer Express 2012 ( SQLServer ) 在 C# 中开发 Windows 窗体应用程序。

在我的项目开始时,我曾经使用SQL Server Management Studio ( MS ) 进行修改,然后在VS中进行修改:在图表视图中从 DB 更新。

但现在出现了一些差异:

  • 我的VS图中存在一个表,但在MS中没有,并且可以与Linq一起正常工作
  • 我在MS中重命名了一些表和字段,为那些在VS中不起作用的表和字段进行了更新,如果我更新了自己,则会出现一些错误dbo.myNewTable not exists

我想要的是:

  1. 首先,所有的作品在我的VS观点
  2. 使MSVS同步
  3. 理解 :)

上下文是:

  • 一台装有以上所有程序的机器
  • SQLServer 上的一个数据库(或者我不确定MS是否没有显示我想象的事实)
  • 过去有 2 个相同数据库的紧密副本(但过去很远)

解决方案:

VS中

  • with:DATABASE_NAME是我的数据库名称
  • and:MACHINE_NAME是我自己的机器名,基本上是托管SQLServer的地方

App.conf

<connectionStrings>
 <add name="DATABASE_NAME_Entities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=MACHINE_NAME;initial catalog=DATABASE_NAME;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

MS相比

  • 数据库名称是MACHINE_NAME\SQLEXPRESS

看到了这个区别:

  • 尝试使用图形连接助手连接 VS:仅是目的的MACHINE_NAME\SQLEXPRESSMACHINE_NAME
  • 尝试使用连接盒连接MSMACHINE_NAME两个连接都可用

然后就像假设的那样,有2个不同的数据库。

但是为什么VS不针对所有可能的连接?

4

1 回答 1

2

听起来您正在连接到不同的数据库,就像您在途中的某个地方制作了原始数据库的副本,现在从一端使用该副本,但在另一端使用原始数据库。检查DSN两个连接的 s 以确保。

于 2013-08-29T22:56:59.930 回答