C# 为什么';在.NET Core 5中没有Program.cs课程吗?
我正在尝试使用.NET5更新我的信息。所以我开始回顾eShopContainers服务和WebApps项目 我读过它的旧版本(2.2和3.1),这是一个丰富的示例,有很多精彩之处。但是在.NET5中,乍一看,在C# 为什么';在.NET Core 5中没有Program.cs课程吗?,c#,c#-9.0,C#,C# 9.0,我正在尝试使用.NET5更新我的信息。所以我开始回顾eShopContainers服务和WebApps项目 我读过它的旧版本(2.2和3.1),这是一个丰富的示例,有很多精彩之处。但是在.NET5中,乍一看,在Program.cs中,我看到了很多没有任何类的方法和属性,这些我不理解,让我感到困惑。在cs文件中我们怎么能有没有类的方法呢?这是C#9的一个特性: 顶级声明消除了许多应用程序中不必要的仪式 应用程序中只有一个文件可以使用顶级语句。如果编译器在多个源文件中找到顶级语句,则为错误。如果将顶
Program.cs
中,我看到了很多没有任何类的方法和属性,这些我不理解,让我感到困惑。在cs文件中我们怎么能有没有类的方法呢?这是C#9的一个特性:
顶级声明消除了许多应用程序中不必要的仪式
应用程序中只有一个文件可以使用顶级语句。如果编译器在多个源文件中找到顶级语句,则为错误。如果将顶级语句与声明的程序入口点方法(通常是Main方法)相结合,则也是一个错误。从某种意义上说,您可以认为一个文件包含通常在程序类的主方法中的语句
因此,您现在可以编写只包含以下代码行的程序:
System.Console.WriteLine("Hello World!");
哇!所以它来自C#9!真奇怪!谢谢,David,那么我如何在没有类的情况下调用一个方法呢?只要它在同一个文件中,就可以像调用任何其他方法一样调用它。从另一个类调用它怎么样?@Mohammad code编译为名为
$
的内部类,因此如果没有reflectionAh,你就不能在程序中的任何地方使用它,不管怎样,你不应该这么做。