列表<INT16>?作为方法参数</int16>

时间:2013-03-10 20:35:44

标签: c# .net list nullable

错误消息不能包含非可空参数

如何传递列表?一个方法?

public int RegexAutoCode(int sID, List<Int16>? valueIDs, string text, SqlCommand cmd)

2 个答案:

答案 0 :(得分:2)

没有List<>? - List是引用类型而不管元素类型是什么,因此已经可以为空:

// This is absolutely fine
List<Int16> list = null;

如果您想要List个可以为Int16个值(因此每个元素可以为null或Int16),那么您需要一个如下参数:

List<Int16?> valueIDs

要使Nullable<T>有效,T必须是不可为空的值类型。那就是T : struct约束表示的内容。

答案 1 :(得分:1)

使用List<Int16?>

您的?位置不正确。