用ILSpy查看之前一个同事写的代码,得出源码运行到一个页面时出现上面这个错误,部分代码片断如下:public class AdminPage
{
        [CompilerGenerated]
        [Serializable]
         private sealed class AdminP//反编译出来的这个AdminP是<>c,运行不了,所以我随便取了个名AdminP
        {
            public static readonly AdminPage.AdminP _p = new AdminPage.AdminP();//_p是我随便取的名,原先是<>9
            public static Func<Admin_Menu, bool> _func;//_func 原先是<>9__12_0
            internal bool <OnLoad>b12(Admin_Menu m)//b12原先是b__12_0
            {
                return m.parentid == 0;
            }
        }protected override void OnLoad(EventArgs e)
{
}大概的片断就是上面这样
现在提示在【 internal bool <OnLoad>b12】这行,AdminPage.OnLoad是"方法",但此处被当做"类型"来使用,请教这要如何解决?谢谢

解决方案 »

  1.   

    反编译失败……
    应该是下面这种吧
    internal bool  OnLoad (Admin_Menu m)
      

  2.   

    将一段可执行的代码封装起来就可以看做是一个方法,方法可以没有参数,也可以有多个参数
    参数类型可以是string、int、decimal、控件名称.....
    比如 string name;  那么string就是参数类型,name就是参数  给你说个很容易理解的方法:在窗体加载事件内写一段可执行的代码,然后将这段代码选中,之后按Ctrl+R+M键,出现的private void NewMethod(这里可以有参数也可以没有){....},这个就可以叫做方法,然后窗体加载事件内应该就剩下NewMethod();这样就是窗体事件调用了这个方法,在其他事件内也可以同样调用NewMethod();
      

  3.   

    AdminPage.OnLoad是"方法",但此处被当做"类型"来使用
    -》你把什么是方法,什么是类型的概念搞清楚就行了。