2014-06-10 44 views
-3

如何将SqlParameter存储在Hashtable中?我在下面的例子中试图把P放在param如何在散列表中存储SqlParameter

Hashtable param = new Hashtable(); 
SqlParameter P = new SqlParameter("@Picture", SqlDbType.Varbinary, b.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, b); 
+0

您应该使用'Dictionary',而不是'HashTable'。 – SLaks

+3

@SLaks:他的问题最少:|如果你问你想做什么,OP,你会得到更好的帮助。 – Will

+0

什么是具体问题? – usr

回答

0

的基本语法的值添加到一个哈希表,使用上面的变量名是:

param.Add("Picture", P); 

其中,“图片”就是你以后可以检索该项目的一个关键背出来的由例如hashtable中:

SqlParameter retrieved = (SqlParameter)param["Picture"]; 

尽管如此,和其他人已经对您的问题发表了评论,它可能是值得使用字典在一个Hashtable考虑。 Dictionary是散列表的类型化实例,因此您可以指定要插入的对象的类型,从而防止添加旧垃圾(除非有理由不希望它被键入)。我相信从键入词典的拳击方面也有一个性能优势...

+1

请注意,使用'Hashtable'时,您需要在检索时进行投射。 (并且没有涉及'string'或'SqlParameter'的拳击。) –

+0

不错,赶上乔恩,更新以适当地施放 – PulseLab