我正在用 C# 开发一个 CLR 应用程序。
我遇到了 SqlChars 类型和 SqlString。
但我没有发现它们之间的区别。
什么时候用SqlChars,什么时候用SqlString?

谢谢

最佳答案

我很抱歉在当前选择的答案中复制了一些数据,但我想尝试提供一些说明。

首先,简短的回答:

我关于何时使用 SqlChars 与 SqlString 的建议与您的意图有关。如果您不打算修改输入字符串,请使用 SqlString。如果您需要操作输入,请使用 SqlChars。

现在有一些关于我如何到达那里的细节:

我们从文档中可以看出 SqlChars 是一个类, SqlString 是一个结构体。类与结构超出了此响应的范围,但可以说结构重量更轻就足够了。您还可以看到 SqlChars 是可变的(您可以更改它而不必需要新的内存分配)。我找不到涉及 SqlString 大小限制的文档,我 没有 在使用大于 VARCHAR(8000)/NVARCHAR(4000) 的数据和 SqlString 时遇到任何问题。如果您遇到问题,请确保您的 CLR 代码具有 MaxByteSize = -1。

以下信息来自 SQL Types 的 MSDN 文档。

类(class)



结构

关于c# - 什么时候用 sqlchars,什么时候用 sqlstring?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8075953/

10-12 04:42