连接到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.
有什么想法吗?
答案 0 :(得分:0)
您似乎缺少处理SQLException
答案 1 :(得分:0)
就我而言,部署到网络中许多PC的二进制文件除少数机器外都执行得很好。代码中的所有异常都得到了处理,但尽管如此,0xe0434f4d
在启动后才被抛出。该应用程序总是在本地启动(而不是从网络共享),没有明显的权限问题等。该应用程序的.NET 3.5中有其要求。
我检查了已安装的.NET版本(众所周知的注册表子树HKLM\SOFTWARE\NET Framework Setup\NDP
),发现子项v3.5\SP
(ServicePack)不在1
。这意味着安装了.NET 3.5,但不是最新的发布版本(SP1)。在downloading v3.5 SP1之后,安装并重新启动PC,整个问题就消失了。因此关键是" 不仅仅是任何.NET 3.5,而且最新的.NET 3.5必须存在"。