gpt4 book ai didi

c# - Ado.Net RecordSet 成员等效?

转载 作者:行者123 更新时间:2023-11-30 22:43:16 24 4
gpt4 key购买 nike

我目前正在将依赖 ADO 的 Vb6 程序重写为带有 ADO.NET 的 C#。我在原始代码中的几个地方遇到过这样的事情:

Dim rs As New Recordset
rs.CacheSize = 500
Call rs.Open(sSql, cnMeta, adOpenForwardOnly, adLockReadOnly)

在 Ado.Net 中是否有与 ADO.RecordSet.CacheSize 等效的(甚至需要等效的)? (大写?)我很高兴接受“ADO.NET”为您处理这些(事实上,非常很高兴接受)。我的问题是,在这次迁移之前我没有 ADO 经验,所以我不确定我是否会遗漏一些微妙之处。

我是否正确理解 adOpenForwardOnly 和 adLockReadOnly 是使 RecordSet 表现得像 SqlDataReader 已经做的 [/EDIT] 的 [编辑] 方式?如果是这样,那么我唯一真正的问题是我是否需要使 Ado.Net 缓存更多,或者是否默认处理。

如果这是一个重复的问题,我真的很抱歉。我好像在 S.O. 上找不到这个或 msdn。

最佳答案

CacheSize 属性控制记录集读入其内部缓冲区的记录数。 ADO.NET 中没有等效的属性,因为它的缓冲方式不同。所以,您可以忽略它。

Do I understand correctly that adOpenForwardOnly and adLockReadOnly are the defaults for SqlDataReader?

是的。好吧,这不是默认设置,而是数据读取器工作的唯一方式。对于使用 RecordSet 的任何其他方式,您将使用其他类,例如 DataSetSqlDataAdapter

关于c# - Ado.Net RecordSet 成员等效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4027459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com