问题标签 [idbconnection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2366 浏览

mysql - 将参数传递给 mySQL 数据库的 IdbCommand

我正在尝试使用 IdbCommand 做一些相对简单的事情来执行插入查询。

这是代码:

但是我不断收到带有消息“列'日期'不能为空”的 MySqlException。

我所有的选择都工作正常,只是这个插入有问题,我看不出它有明显的问题。

该参数在运行时使用有效的 DateTime 填充。我认为这可能与 Date 是保留字并且需要反引号有关,但这就是在线教程所推荐的。

有任何想法吗?

0 投票
1 回答
2429 浏览

autofac - 用 autofac 注册抽象类

我只是在添加了 autofac 程序集的快速制作的控制台应用程序中运行此代码:

尽管 DbConnection 是抽象类型,但也不例外。

autofac 是否真的创建了 DbConnection 的具体实例,尽管它是抽象的?

怎么可能不使用:

builder.RegisterType().As().WithParameter("connectionString", connectionString);

我是否必须从 DbConnection 继承并注入然后从 DbConnection 继承的 MySqlConnection?

0 投票
1 回答
230 浏览

sql-server - ServiceStack v4 中服务的 Db 为空

我已经使用 ServiceStack 的免费版本几年了,最近购买了 v4 用于一个项目。

我已通读发行说明和相关博客,但找不到有关我遇到的问题的任何指导...

进行了发行说明中定义的所有相应更改后,我在 ServiceStack.Service.get_Db() 上遇到了 NullReferenceException。以下是一些可能有帮助的代码片段:

全球.asax...

重置公司.cs...

NullReferenceException 发生在

这是堆栈跟踪

有没有人有任何想法?当然看起来像是我错过或不知道的 v4 中的另一个重大变化......

0 投票
2 回答
735 浏览

c# - IDbConnection 和使用 c# 中的块

我知道将 IDbConnection 对象包装在 using 块中可确保调用 Dispose 并释放它正在使用的资源。话虽如此,我是否还需要在 using 块中包装 IDbCommand 和 IDataReader,或者只是包装连接对象就足够了。谢谢。

0 投票
1 回答
105 浏览

c# - 如何使用 Ninject 在长时间运行的进程中最好地处理 Sql 连接?

我们有一个 Azure Worker 角色(基本上与 Windows 服务相同),我们将 Ninject 用于 IoC,并将 IDbConnection 注入到我们的 worker 中。最佳实践表明,您应该在不再使用连接时立即处理连接,但在可能有意义或可能没有意义的工作人员/服务中。那么在这种情况下处理数据库连接的好方法是什么?

我们的选择包括(也许也不限于):

  • 使用 ServiceLocator 模式并在我们处理的每条消息上请求新连接
  • 保持连接(即什么都不做)

老实说,我不喜欢任何一个,我希望有其他的解决方案......

0 投票
4 回答
40096 浏览

c# - 将 BeginTransaction 与 Dapper.IDbConnection 一起使用的正确方法

在 Dapper中使用BeginTransaction()with的正确方法是什么?IDbConnection

我创建了一个我必须使用的方法BeginTransaction()。这是代码。

当我执行上述方法时-我遇到了异常-

无效操作。连接已关闭。

这是因为您无法在连接打开之前开始事务。所以当我添加这一行时:cn.Open();,错误得到解决。但是我在某处读到手动打开连接是不好的做法!Dapper 仅在需要时打开连接。

在实体框架中,您可以使用TransactionScope.

cn.Open()...所以我的问题是什么是处理事务而不在Dapper中添加行的好习惯?我想应该有一些适当的方法。

0 投票
1 回答
1580 浏览

c# - Dapper 在执行时挂起

我有一个 - IDbConnection - sql = @"UPDATE tablename SET json = :json, lastupdate = SYSDATE WHERE id = :id"

编码在连接处停止。执行。没有错误或任何东西。就挂了。

:json 是 JsonConvert 返回的序列化对象。

:id 是一个字符串

我还尝试删除参数并将值包含在 SQL 本身中。

0 投票
1 回答
350 浏览

c# - 共享 IDbConnection 以保持事务本地化

Data Repository,它处理从通用接口继承的数据实体,DAL 层被实现为通用类,它以依赖注入的形式获取通用接口。以下是设计:

数据实体 - 车辆

通用接口 - IData

车辆存储库

DAL 类实现:

我从调用类执行VehicleData使用DAL如下。

我面临的问题是,在每个 CRUD 方法中,IDbConnection 都是在Using块中创建的,因此最终被设置为它在本地上下文中,但是有一种情况,各种实体上的多个 DAL 操作需要成为单个事务上下文的一部分,如果我以类似的方式继续,那么打开的事务上下文将被提升到分布式级别,因为多个连接资源正在打开,即使我可以在相同的连接上下文上执行它们,因为它们被一一执行。问题仍然存在:

  1. 如何跨多个调用共享连接DAL<Vehicle>.Update, DAL<Driver>.Update and DAL<Truck>.Update,避免事务从本地升级到分布式

  2. 不确定,在事务上下文中打开和处理连接是否意味着可以打开另一个连接而无需提升到分布式事务,在我看来这不会发生

0 投票
1 回答
106 浏览

sql-server - 如何防止此代码多次处理对象?

当我对以下代码运行代码分析时:

......我明白了,

CA2202 不要多次处理对象对象‘连接’可以在方法‘OrderConfirm.GetOrderEntry()’中多次处理。为避免生成 System.ObjectDisposedException,您不应在对象上多次调用 Dispose

光标位于最后的“结束使用”行;这如何被视为对象的双重处置?不是两个“使用”块都需要以这种方式终止吗?

0 投票
1 回答
8569 浏览

c# - .Net 核心依赖注入 IdbConnection

我有一个使用 autofac 进行依赖注入的 .NET MVC 应用程序。当应用程序启动时,以下代码注册 IDbConnection

我正在尝试使用框架提供的默认依赖注入机制在 .Net Core MVC 中找到如何做同样的事情。我正在考虑添加这样的东西

但我不知道在哪里添加连接字符串