首页 新闻 会员 周边

Guid的一个麻烦的问题。

0
悬赏园豆:50 [已解决问题] 解决于 2008-11-11 16:38

事情是这样的:

我写了一个存储过程。存储过程的输入参数类型是UNIQUEIDENTIFIER(即Guid),然后用一个强类型的DataSet(即.xsd文件)调用它,数据库是SQL2005。

接着通过程序调用强类型的TableAdapter执行这个存储过程。由于输入参数为Guid。所以我把输入参数通过“Guid gEvaluatingConnectionId = new Guid("ea067f86-99a4-dd11-adc7-00d0b7bd1679");” 转换为Guid类型传递了进去。

结果提示“未将对象引用到实例。”查了错误信息。错误信息提示:“只能对 Type.IsGenericParameter 为 True 的类型调用方法。”。这是为什么呢?

 

有点急的说。先谢谢了。

问题补充: 错误提示:“((System.Type)(((System.Reflection.MemberInfo)(((System.Exception)($exception)).TargetSite)).ReflectedType)).GenericParameterPosition”引发了“System.InvalidOperationException”类型的异常
WikinSU的主页 WikinSU | 初学一级 | 园豆:150
提问于:2008-11-11 14:27
< >
分享
最佳答案
0

下面是MSDN上对Type.IsGenericParameter的说明:

Type.IsGenericParameter 属性

注意:此属性在 .NET Framework 2.0 版中是新增的。 

获取一个值,该值指示当前 Type 是否表示泛型类型或方法的定义中的类型参数。
如果 Type 对象表示泛型类型定义或泛型方法定义的类型参数,则为 true;否则为 false。 
 备注 
表示泛型类型参数的 Type 对象可通过调用表示泛型类型定义的 Type 对象的 GetGenericArguments 方法或表示泛型方法定义的 MethodInfo 对象的 GetGenericArguments 方法来获得。

对于泛型类型或方法定义,IsGenericParameter 属性 (Property) 对产生的数组的每个元素返回 true。

对于封闭构造的类型或方法,IsGenericParameter 属性 (Property) 对 GetGenericArguments 方法返回的数组的每个元素返回 false。

对于开放构造类型或方法,数组的某些元素可能是特定的类型,而其他可能是类型参数。IsGenericParameter 对类型返回 false,对类型参数返回 true。ContainsGenericParameters 属性的代码示例演示了混合有类型和类型参数的泛型类。

所以我感觉你的错误不是因为传了GUID类型的参数,而是可能在其他方面。希望对你有所帮助。

上不了岸的鱼 | 老鸟四级 |园豆:4613 | 2008-11-11 14:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册