我收到了另外一家公司的两个Visual Basic应用程序。我的章程是让他们都工作。我通过在VS 2008中创建新的ADO连接来获得第一个工作,然后将文件复制到应用程序并且它可以工作。我使用VS 2015进行工作。这两个应用程序都是.NET 4.0,并且是在VS2010中开发的。
我无法上班的第二个应用程序。我也以同样的方式创建了一个新的ADO Connection。这是一个与其他应用程序不同的数据库。
让我补充一点,我得到了用于创建和加载表格以及应用程序和所有DLL的脚本。
以下是我最终通过重新创建ADO连接工作的应用程序的原始连接字符串(当它在服务器上时):
<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string="data source=db;initial catalog=MM_BF_ENROLLMENTELIGIBILITY;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
以下是我为修复上述内容而创建的ADO连接:
<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string="data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_ENROLLMENTELIGIBILITY;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
重新创建ADO连接后,上面的工作正常工作!!
以下是非工作应用的原始(当它在服务器上时)连接字符串:
<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string="data source=ias-SQLinst01;initial catalog=MM_BF_SoldCase;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
这是我创建的那个:
<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string="data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_SoldCase;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
我已将我创建新连接字符串的项目中的.sln,.suo和.edmx文件复制到当前的非工作项目中。
我可以使用MSSMS连接到非工作项目数据库,并使用一个名为&#34; RAZOR&#34;
的sql工具我已经检查了对数据库的远程访问以及所有显而易见的事情......我对VB相当新,但已经开发了20多年。
如果有任何我没有提供的内容可以帮助回答这个问题......那就是你的问题,只需要问一下。
提前致谢!!!
顺便说一句......我纠正了我的胖手指......这是ADO答案 0 :(得分:0)
工作连接使用Windows身份验证。不工作的是使用SQL身份验证。
除非您已明确将SQL Express实例配置为使用混合模式身份验证,并使用正确的密码和目标数据库中的正确权限设置SQL用户,否则SQL身份验证将不起作用。
尝试更改非工作连接以使用Windows身份验证:
<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string="data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_SoldCase;Integrated Security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />