标签: sqlclient

例外:为'system.data.sqlclient.sqlconnection'输入初始值设定项?

我无法弄清楚这个异常的问题是什么.

'System.Data.SqlClient.SqlConnection'的类型初始值设定项引发了异常

第一次尝试:我正在使用WCF服务来制作一些小应用程序.它工作得很好,我可以正确使用LINQ.2或3天后.也许在我关闭Visual Studio并再次加载项目之后.出现异常.

第二次尝试也一样.我创建了另一个项目,它工作得很好,直到我做其他事情(我不更改任何代码)

SQL Server工作正常,我可以通过SQL Management Studio连接没有问题.

单击Debug错误会将我引导至linq文件的连接字符串.

可能是什么问题呢?我试图搜索但找不到解决这个问题的答案.

谢谢

c# linq wcf exception sqlclient

10
推荐指数
1
解决办法
4万
查看次数

System.Data.IDbCommand和异步执行?

System.Data.SqlClient.SqlCommand有方法

BeginExecuteNonQuery
BeginExecuteReader
BeginExecuteXmlReader
Run Code Online (Sandbox Code Playgroud)

EndExecuteNonQuery
EndExecuteReader
EndExecuteXmlReader
Run Code Online (Sandbox Code Playgroud)

用于异步执行.

System.Data.IDbCommand只有

ExecuteNonQuery
ExecuteReader
ExecuteXmlReader
Run Code Online (Sandbox Code Playgroud)

它们仅用于同步操作.

是否有任何异步操作接口?
另外,为什么没有BeginExecuteScalar?

c# sql asynchronous interface sqlclient

10
推荐指数
2
解决办法
5039
查看次数

'while'在异步计算表达式中,条件是异步的

我正在玩F#中使用SqlClient而且我在使用时遇到了困难SqlDataReader.ReadAsync.我正在尝试做F#等价的

while (await reader.ReadAsync) { ... }

在F#中做到这一点的最佳方法是什么?以下是我的完整计划.它有效,但我想知道是否有更好的方法来做到这一点.

open System
open System.Data.SqlClient
open System.Threading.Tasks

let connectionString = "Server=.;Integrated Security=SSPI"

module Async =
    let AwaitVoidTask : (Task -> Async<unit>) =
        Async.AwaitIAsyncResult >> Async.Ignore

    // QUESTION: Is this idiomatic F#? Is there a more generally-used way of doing this?
    let rec While (predicateFn : unit -> Async<bool>) (action : unit -> unit) : Async<unit> = 
        async {
            let! b = predicateFn()
            match b with
                | true -> action(); do! While …
Run Code Online (Sandbox Code Playgroud)

f# asynchronous sqldatareader sqlclient

10
推荐指数
1
解决办法
572
查看次数

Mono相当于ClientConnectionId

我想在mono下运行这个功能(我目前的版本是4.0.2)

 public Object GetConnectionProperty(SqlConnection _conn, string prop)
    {
        if (_conn.State == ConnectionState.Closed &
            prop == "ServerVersion")
            return string.Empty;

        if (prop == "ClientConnectionId")
        {
            Guid guid = _conn.ClientConnectionId;
            return guid.ToString();
        }
        return _conn.GetType().GetProperty(prop).GetValue(_conn);
    }
Run Code Online (Sandbox Code Playgroud)

但它失败了,错误:

error CS1061: Type `System.Data.SqlClient.SqlConnection' does not contain a 
definition for `ClientConnectionId' and no extension method 
`ClientConnectionId' of type `System.Data.SqlClient.SqlConnection' could be 
found. Are you missing an assembly reference?
Run Code Online (Sandbox Code Playgroud)

Mono相当于ClientConnectionId什么?或者我该如何解决?

c# sql-server mono sqlclient

9
推荐指数
1
解决办法
288
查看次数

System.InvalidCastException: 'SqlParameterCollection 只接受非空的 SqlParameter 类型对象,不接受 SqlParameter 对象。

我将我的项目从 ASP.NET Core 2.2 迁移到 ASP.NET Core 3.0。现在我得到了这个例外。在 ASP.NET Core 2.2 中,它使用FromSql(); 现在它正在使用FromSqlRaw(). 我正在使用 Entity Framework Core 调用我的过程。

SqlParameter Username = new SqlParameter
            {
                ParameterName = "USERNAME",
                SqlDbType = SqlDbType.NVarChar,
                Value = user.Username,
                Direction = ParameterDirection.Input,
                Size = 50
            };

SqlParameter Password = new SqlParameter
            {
                ParameterName = "PASSWORD",
                SqlDbType = SqlDbType.NVarChar,
                Value = user.Password,
                Direction = ParameterDirection.Input,
                Size = 50
            };

SqlParameter msgOut = new SqlParameter
            {
                ParameterName = "MSG",
                SqlDbType = SqlDbType.NVarChar,
                Direction = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net sqlclient asp.net-core asp.net-core-3.0

9
推荐指数
2
解决办法
4761
查看次数

如何使用 Microsoft.Data.SqlClient Version=4.0.0 修复“目标主体名称不正确”错误

升级后Microsoft.Data.SqlClient Version=4.0.0出现错误:

已成功与服务器建立连接,但登录过程中出现错误。(提供程序:SSL 提供程序,错误:0 - 目标主体名称不正确。

我查找了重大更改https://github.com/dotnet/SqlClient/pull/1210,然后Encrypt=False在连接字符串中进行设置,但是错误仍然相同。

仅通过恢复到错误才消失2.0.1

有人可以建议如何解决该问题吗4.0.0

sql-server sqlclient

9
推荐指数
1
解决办法
3万
查看次数

我什么时候应该使用Odbc,OleDb,SQLClient?有什么权衡取舍

我开始使用SQLServer数据库.所以我似乎应该使用System.Data.SqlClient命名空间.但是,我们有可能关闭我们的SqlServer数据库并转到MySql或Oracle.出于这个原因,我提出了一套关于我们的.Net应用程序如何与数据库通信的标准,以便在将来我们需要时更容易迁移到不同的数据库系统.

所以这是标准:

  1. 如果可能的话使用ORM(例如NHibernate)(没有LINQ,因为它只支持SqlServer,但是实体框架及其对Oracle和MySql的支持呢?)
  2. 如果ORM是过度杀死,则使用参数化SQL查询.
  3. 仅将存储过程用于需要在数据库上执行的长时间运行或复杂操作.

这让我想到了我的主要问题. 我应该使用哪个命名空间来编写DAL代码?

在我看来,选择是在System.Data.ODBC和之间System.Data.OleDB:

  • 有什么权衡取舍?
  • 一个比另一个更受欢迎吗?
  • 您对前3个标准有何看法?

.net database oledb odbc sqlclient

8
推荐指数
1
解决办法
1万
查看次数

使用SqlClient的System.IO.FileNotFoundException

解决了我在这里提到的问题后,我得到了以下异常

System.IO.FileNotFoundException:'无法加载文件或程序集'System.Data.SqlClient,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一.该系统找不到指定的文件.'

我的库是.NET Standard 1.4,WebApp是.NET Framework 4.6.1

System.Data.SqlClient是版本 - 4.3.0 NuGet包.所以我尝试了以下但是徒劳:

<dependentAssembly>
      <assemblyIdentity name="System.Data.SqlClient" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
      <bindingRedirect oldVersion="4.1.0.0" newVersion="4.3.0.0"/>
</dependentAssembly>
Run Code Online (Sandbox Code Playgroud)

.net c# sqlclient

8
推荐指数
1
解决办法
4897
查看次数

更新Windows后出现SqlClient错误 - "传入的表格数据流(TDS)远程过程调用>(RPC)协议流不正确"

自从将Windows 10更新到1803以来,我已经开始接收此错误,只要我运行一个EF查询,该查询连接一个带有标量参数的表值函数.

消息:传入的表格数据流(TDS)远程过程调用(RPC)协议流不正确.参数2(""):数据类型0x00未知.

堆栈跟踪:位于System.Threading.Tasks.Task.Execute()的System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()中的System.Data.SqlClient.SqlCommand.<> c.b__180_0(Task1结果).从抛出异常的先前位置开始的堆栈跟踪结束---在System.Data.Entity.Core.EntityClient的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()处.Internal.EntityCommandDefinition.d__c.MoveNext()

我在.NET 4.6框架项目中使用Entity Framework v6.2.我验证了相同的代码在使用Windows 10 1709的另一台计算机上执行没有问题.我将计算机更新到Windows 10 1803而没有其他更改,我开始收到上述错误.导致错误的代码:

var query = from fs in db.ViewWithInformation
            join e in db.GetEventsForPerson(personnelId) on fs.Event_Id equals e.Event_Id
            where !fs.Is_Deleted
            select fs;
return await query.ToArrayAsync();
Run Code Online (Sandbox Code Playgroud)

如果我针对db.GetEventsForPerson删除连接,则查询将运行.上面的EF查询生成的SQL在SSMS中运行良好.

编辑5/15/2018:我已经确认这是由.NET Framework 4.7.2特别引起的.我在Windows 10 1709计算机上手动安装了.NET 4.7.2,错误再次启动.

sql-server sqlclient azure-sql-database .net-4.7.2

8
推荐指数
1
解决办法
2008
查看次数

在 .Net Core 2.0 中使用 System.Data.SqlClient.dll 时出现版本冲突错误

在 .Net Core 2.0 中使用 System.Data.SqlClient.dll 时出现版本冲突错误。它看起来像是 Core dll 和 NetStandard dll 之间的冲突。不知道为什么提到

"System.Data.SqlClient,版本=4.5.0.0

这是不存在的。

Web 应用程序调用业务库,业务库又调用 DAL。DAL 正在使用 System.Data.SqlClient.dll。全部都在 .Net Core2.0 中。

你能帮忙吗?

这是错误。

1> “System.Data.SqlClient, Version=4.2.0.2, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”和“System.Data.SqlClient, Version=4.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”之间存在冲突. 1> "System.Data.SqlClient, Version=4.2.0.2, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 被选中是因为它是主要的并且 "System.Data.SqlClient, Version=4.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a" “ 不是。1> 依赖于“System.Data.SqlClient, Version=4.2.0.2, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的参考文献[C:\Program Files\dotnet\sdk\NuGetFallbackFolder\system.data.sqlclient\4.4.3\ ref\netstandard2.0\System.Data.SqlClient.dll]。1> C:\Program Files\dotnet\sdk\NuGetFallbackFolder\system.data.sqlclient\4.4。3\ref\netstandard2.0\System.Data.SqlClient.dll 1> 项目文件项包括导致引用“C:\Program Files\dotnet\sdk\NuGetFallbackFolder\system.data.sqlclient\4.4.3\ref\netstandard2 .0\System.Data.SqlClient.dll”。1> C:\Program Files\dotnet\sdk\NuGetFallbackFolder\system.data.sqlclient\4.4.3\ref\netstandard2.0\System.Data.SqlClient.dll 1> 依赖于“System.Data.SqlClient,版本=4.5.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a”[]。1> D:\Projects.Net Core\Test Apps\Postsharp\SmartBank.Web\SmartBank.Core.Business\SmartBank.Core.Business\bin\Debug\netcoreapp2.0\SmartBank.Core.DAL.dll 1> 项目文件项目包括导致引用“D:\Projects.Net Core\Test Apps\Postsharp\SmartBank.Web\SmartBank.Core.Business\SmartBank.Core.

sqlclient .net-core-2.0

7
推荐指数
1
解决办法
1564
查看次数