我是靠谱客的博主 内向盼望,最近开发中收集的这篇文章主要介绍关于“无法显式调用运算符或访问器”解决方案(反编译),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

   反编译不用说了,用Reflector,免费又强大的工具谁不喜欢呢,安装FileGenerator的插件。然后直接生成vs2005的工程,嘿,你别说,还真贴心。然后我就看见工程了。奇怪,多出了个_PrivateImplementationDetails_XXXXXX.cs的cs文件,貌似自动生成的,删掉,否则工程就不能生成成功了。然后编译吧,傻眼了,一堆错误。其中以“无法显式调用运算符或访问器”居多,google一下,在这里看到提示。原来是Reflector的问题,在反编译的时候他把调用属性都变成了方法。比如Name.get_firstName("Hello"),应该为Name.firstName="Hello";还有,datarader的item经过反编译也会出错,比如inforeader.get_item("name").ToString(),其实应该是inforeader.["name"].ToString(),没办法,比如e.Item().OwnerItem()应该为e.Item.OwnerItem手工改吧。于是我就改了300多个错误........;还有,他还会报方法参数问题的错误,比如aa.Compare("helloworld","d",5),在5的未知显示参数错误,原来是本身这个位置的参数是一个枚举类型,反编译不知什么原因变成了第五个,于是改成枚举StringComparison.OrdinalIgnoreCase轻松搞定。

        经过一些别的修改,生成成功了。然后吧讨厌的免费版限制一一去掉,大功告成。

解决方法就是

你仔细看那是不是出现了两次decimal.

money.YellowBoy(decimal.op_UnaryNegation(decimal.Parse(text)), userID);

其实只要把他改成

money.YellowBoy(decimal.Parse(text), userID);

this.SiteModel.get_IsStaticType())

改成

this.SiteModel.IsStaticType)

问题就解决了

最后

以上就是内向盼望为你收集整理的关于“无法显式调用运算符或访问器”解决方案(反编译)的全部内容,希望文章能够帮你解决关于“无法显式调用运算符或访问器”解决方案(反编译)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部