C#-我可以在主系统启动之前初始化吗?

C#-我可以在主系统启动之前初始化吗?,c#,static,constructor,main,C#,Static,Constructor,Main,我接受了一次工作面试,问了以下问题: 添加/更改以下程序,以便在调用Main之前调用M方法。 你不可以换总水管 Main { c C = new C() } Class C { Public C() { } Public M() { } } 我把M写成一个类,然后把公共M变成静态构造函数,但这在C++中不起作用,只有C++。 我搜索了一下网络,在主服务器启动之前找不到任何初始化的方法 谢谢…是的,你可以 编写一个Program

我接受了一次工作面试,问了以下问题:

添加/更改以下程序,以便在调用Main之前调用M方法。 你不可以换总水管

Main
{
    c C = new C()
}

Class C
{    
    Public C()
    {
    }

    Public M()
    {
    }
}
<>我把M写成一个类,然后把公共M变成静态构造函数,但这在C++中不起作用,只有C++。 我搜索了一下网络,在主服务器启动之前找不到任何初始化的方法

谢谢…

是的,你可以

编写一个
Program
class的类初始值设定项,将代码放在调用main之前,然后自己调用main

partial class Program {
    static Program(){
        // do something
        Main();
        Environment.Exit(0);
    }
}

这个问题没有道理。你可以在实例化
C
之前调用
M
。Main是否像
publicstaticvoidmain()
中的一样?是的,你缺少了一些位-如果面试官给了你,你就不想在那里工作了。:)M应该是另一个类,还是C的第二个构造函数?实际上,解决方案是使用继承。使C从另一个类继承,并在C中重写M。然后您可以在父构造函数中调用M,它在C构造函数之前被调用。