0

连接到 sql server 2005 dbase 时,代码工作正常。但是当连接到 sql server 2008 dbase 时它会失败。

场景:webservice先连接2008 dbase就好了。然后在调用 COM+ 对象期间,连接失败。

最近升级项目使用VS2008并升级到Sql Server 2008。

using (TransactionScope transactionScope = new TransactionScope(TransactionScopeOption.Required, transactionTimeOut))
{     
   using (SqlConnection sqlConnection = new SqlConnection(DataConnection))
   {
      try
      {
 String command = "my_StoredProcedure";

 using (SqlCommand sqlCommand = new SqlCommand(command, sqlConnection))
 {
             sqlConnection.Open();  //- exception is throw right after this call in the COM+ object.

有什么想法吗?

4

2 回答 2

0

就我而言,部署到网络中许多 PC 的二进制文件执行得很好,除了少数机器。代码中的所有异常都已处理,但尽管如此,0xe0434f4d还是在启动后立即抛出。该应用程序始终在本地启动(不是从网络共享),没有明显的权限问题等。该应用程序的要求中有 .NET 3.5。

我检查了已安装的 .NET 版本(众所周知的注册表子树HKLM\SOFTWARE\NET Framework Setup\NDP),发现子项v3.5\SP(ServicePack)不在1. 这意味着安装了 .NET 3.5,但不是最新发布的版本 (SP1)。下载 v3.5 SP1后,安装并重新启动 PC,整个问题就消失了。所以关键是“不仅仅是任何 .NET 3.5,而且必须存在最新的 .NET 3.5 ”。

于 2014-10-25T10:37:45.733 回答
0

看起来您缺少处理 SQLException

http://blogs.msdn.com/tess/archive/2006/04/27/584927.aspx

于 2010-01-22T00:24:13.157 回答