VB.NET object 转换到C#object问题
因为无法确定obj的类型,原先的代码是直接obj.Send(blabla)但是转为c#后,会出现Type`object'doesnotcontainadefinition...
因为无法确定obj的类型,原先的代码是直接obj.Send(blabla)
但是转为c#后,会出现 Type `object' does not contain a definition for `Send' and no extension method `Send' of type `object' could be found
我知道C#在类型转换上更加严格,但是我如何继续在不确定类型的情况下调用Send函数呢?
谢谢
引用是动态加载的
我也遇到了同样的问题,请问你是怎样解决的,希望能给个实例!
备注:
可以用 obj.GetType()获得 Type 对象,然后调用 Type 对象的 InvokeMember()方法。具体用法请查阅 MSDN。
如果你用的是 c#4.0的话,可以直接这样用:
dynamic obj = Object对象;
obj.Send(blabla);
我采用过以上两种方法,我的vs也是2010,编译还是没有通过!希望你能指导一下。 展开
但是转为c#后,会出现 Type `object' does not contain a definition for `Send' and no extension method `Send' of type `object' could be found
我知道C#在类型转换上更加严格,但是我如何继续在不确定类型的情况下调用Send函数呢?
谢谢
引用是动态加载的
我也遇到了同样的问题,请问你是怎样解决的,希望能给个实例!
备注:
可以用 obj.GetType()获得 Type 对象,然后调用 Type 对象的 InvokeMember()方法。具体用法请查阅 MSDN。
如果你用的是 c#4.0的话,可以直接这样用:
dynamic obj = Object对象;
obj.Send(blabla);
我采用过以上两种方法,我的vs也是2010,编译还是没有通过!希望你能指导一下。 展开
3个回答
展开全部
你实例化对象看看哈
VB 和C# 的object 在变异的时候是不一样的,你不做修改正常出错
object指对象,代表的是通用的对象,就是什么对象都可以表示,new只能表示固定的对象
还有注意一下大小写object和Object是不一样的
VB 和C# 的object 在变异的时候是不一样的,你不做修改正常出错
object指对象,代表的是通用的对象,就是什么对象都可以表示,new只能表示固定的对象
还有注意一下大小写object和Object是不一样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
无法确定类型是不可能的 一个变量的类型总是确定的
你需要从上下文来知道这个变量的类型 并用C#的标准语法表现出来
反射和动态是一种解决办法 但并不是最好的解决方案
因为它会潜在的破坏代码结构 所以能不用就不用
嗯 其实dynamic那段代码是正确的。。
你需要从上下文来知道这个变量的类型 并用C#的标准语法表现出来
反射和动态是一种解决办法 但并不是最好的解决方案
因为它会潜在的破坏代码结构 所以能不用就不用
嗯 其实dynamic那段代码是正确的。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
留联系看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询