参数个数可变的方法的写法

gsk09 服务器端工程师  2011-03-04 04:12:52

用C#为SQLServer数据库写了个子定义方法。
可是,部署的时候报错。说是没有 string[] 这个类型。

 [Microsoft.SqlServer.Server.SqlFunction]
public static SqlBoolean funName(string pattern, params string[] inputs)
{
//代码
}


我想写的这个方法有个特点,就是参数个数不定。
不知道能不能实现。
...全文
95 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Linares 2011-03-04
[Quote=引用 11 楼 gsk09 的回复:]

因为各个参数里面都有些什么符号也不确定。有可能参数里面就含有逗号。
[/Quote]

这不是问题,格式可以自己定义,你可以用花括弧或其它封住参数边界,甚至可以拿JSON的格式来传参,随便。
回复
王向飞 2011-03-04

用C#为SQLServer数据库写了个子定义方法。
他说的是c#
我也没说是数据库啊
[Quote=引用 12 楼 linares 的回复:]
引用 9 楼 wxf163 的回复:

同名不同参
有个术语 叫
重载


牛人,展示一下SQL的UDF如何重载?
[/Quote]
回复
Linares 2011-03-04
[Quote=引用 9 楼 wxf163 的回复:]

同名不同参
有个术语 叫
重载
[/Quote]

牛人,展示一下SQL的UDF如何重载?
回复
gsk09 2011-03-04
因为各个参数里面都有些什么符号也不确定。有可能参数里面就含有逗号。
回复
gsk09 2011-03-04
[Quote=引用 8 楼 linares 的回复:]

SQL code
select funName('参数1','参数2,参数3,参数4,参数5,参数6')
[/Quote]

可以实现这样的吗?
select funName('参数1','参数2','参数3','参数4','参数5','参数6')
回复
王向飞 2011-03-04
同名不同参


有个术语 叫

重载
回复
Linares 2011-03-04
select funName('参数1','参数2,参数3,参数4,参数5,参数6')
回复
Linares 2011-03-04
[Quote=引用 6 楼 gsk09 的回复:]

引用 4 楼 linares 的回复:

http://msdn.microsoft.com/zh-cn/library/5ft6schb%28v=VS.80%29.aspx

用SqlString,C# split 拆分 string[]


需要实现的是,对于这个funName方法的一下调用都是可以的.
SQL code
select funName('参数1','参数2'……
[/Quote]

impossible
回复
gsk09 2011-03-04
[Quote=引用 4 楼 linares 的回复:]

http://msdn.microsoft.com/zh-cn/library/5ft6schb%28v=VS.80%29.aspx

用SqlString,C# split 拆分 string[]
[/Quote]

需要实现的是,对于这个funName方法的一下调用都是可以的.
select funName('参数1','参数2')

select funName('参数1','参数2','参数3')

select funName('参数1','参数2','参数3','参数4','参数5','参数6')
回复
快溜 2011-03-04
[Quote=引用 2 楼 gsk09 的回复:]
引用 1 楼 acherat 的回复:

那个貌似发错版了。。。


这里应该可以有吧。
[/Quote]
有没有你还不知道吗。。。
回复
Linares 2011-03-04
回复
快溜 2011-03-04
能实现,放心大胆的去写吧,只是你参数写错了。
回复
gsk09 2011-03-04
[Quote=引用 1 楼 acherat 的回复:]

那个貌似发错版了。。。
[/Quote]

这里应该可以有吧。
回复
那个貌似发错版了。。。
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2011-03-04 04:12
社区公告
暂无公告