【发布时间】:2012-11-11 08:52:14
【问题描述】:
假设我在 SQL 中有一个 SP:
CREATE PROCEDURE mySP
@LastName nvarchar(10),
@FirstName nvarchar(20)
AS
...
GO
在 c# 中没有指定长度的字符串类型。它的最大长度是2^32-1 ( IMHO)
那么,C# 开发人员有什么样的保护:不发送超过长度的字符串?
(我不认为任何 ORM 也有这个限制 - 也许我错了)。
唯一的方法(我明白了)是在之前(!)读取 Sp 参数并保存在缓存中,然后构建某种代理来负责这个。
但仍然 - 恐怕它只会在运行时失败。
我说的对吗?
有什么解决办法?
【问题讨论】: