我正在做一些天体物理学的研究,并使用Win-Form图表组件来分析数据。在X轴上是日期,在Y轴上是值,我正在应用MovingAverage,使用图中值的成员方法DataManipulator.FinancialFormula
。
我和我的顾问关心这个函数如何处理丢失的日期。所以我试着用ILSpy
查看System.Windows.Forms.DataVisualization.dll
是如何实现的,但是我发现所有的函数体都是空的,但是当我检查TcpClient
Dispose
和Close
方法时,我能够看到完整的函数体。我尝试过ILDasm
和JustDecompile
,结果与ILSpy
相同。
为什么System.Windows.Forms.DataVisualization.dll
中的方法体是空的?
那么,DataManipulator.FinancialFormula
的真正代码在哪里呢?
或者这个函数如何处理日期上的空白?
发布于 2014-03-04 08:38:05
来自ILSpy的我和@Junaith输出之间的差异让我觉得我看错了文件- -C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\System.Windows.Forms.DataVisualization.dll
。这条路径是从System.Windows.Forms.DataVisualization.Charting.DataFormula
元数据顶部的注释中获得的,通过使用图的成员方法DataManipulator.FinancialFormula上的"Go to Definition“VS函数来查看。
因此,我运行了我的程序,使用过程资源管理器,我在程序进程的属性中查看了加载的.NET程序集。让我惊讶的是,之前提到的dll甚至不在那里,相反,我在那里找到了C:\Windows\assembly\NativeImages_v4.0.30319_32\System.Wind0de890be#\a4711c664a774896b35428b1a3bf9470\System.Windows.Forms.DataVisualization.ni.dll
。
我将该动态链接库加载到ILSpy中,方法有完整的实现,包括它们的主体。
https://stackoverflow.com/questions/22154780
复制