在使用 "Host.CreateDefaultBuilder(args).Build();" 的控制台应用程序中,我应该将 Main 方法放在哪里?
Where do i put Main method in a console app that uses the "Host.CreateDefaultBuilder(args).Build();"?
我正在按照本指南创建一个控制台应用程序:https://docs.microsoft.com/en-us/dotnet/core/extensions/configuration
- 我是否将 Main 方法放在“// 应用程序代码应从此处开始”的位置。
"?
- 是否使用 Main 方法,或者如何解决这个问题?
我现有的结构:
namespace MyNameSpace
{
public class Program
{
public static async Task Main(string[] args)
{
//application logic......
}
}
}
您不需要创建显式 Main
方法。 C# top-level statements 表示教程中的三行代码:
using Microsoft.Extensions.Hosting;
using IHost host = Host.CreateDefaultBuilder(args).Build();
await host.RunAsync();
...已经形成了一个有效的程序。大致相当于:
using Microsoft.Extensions.Hosting;
class Program
{
static async Task Main(string[] args)
{
using IHost host = Host.CreateDefaultBuilder(args).Build();
await host.RunAsync();
}
}
我鼓励您使用现有的 top-level 语句方法,除非您 需要 更复杂的初始化代码...虽然您 如果需要,可以 显式编写class 和Main
方法声明。
同一教程中后面的示例显示了大量的应用程序启动代码,仍然使用 top-level 语句。或者您可以创建一个新的 ASP.NET 核心应用程序,它将显示更多内容。
我正在按照本指南创建一个控制台应用程序:https://docs.microsoft.com/en-us/dotnet/core/extensions/configuration
- 我是否将 Main 方法放在“// 应用程序代码应从此处开始”的位置。 "?
- 是否使用 Main 方法,或者如何解决这个问题?
我现有的结构:
namespace MyNameSpace
{
public class Program
{
public static async Task Main(string[] args)
{
//application logic......
}
}
}
您不需要创建显式 Main
方法。 C# top-level statements 表示教程中的三行代码:
using Microsoft.Extensions.Hosting;
using IHost host = Host.CreateDefaultBuilder(args).Build();
await host.RunAsync();
...已经形成了一个有效的程序。大致相当于:
using Microsoft.Extensions.Hosting;
class Program
{
static async Task Main(string[] args)
{
using IHost host = Host.CreateDefaultBuilder(args).Build();
await host.RunAsync();
}
}
我鼓励您使用现有的 top-level 语句方法,除非您 需要 更复杂的初始化代码...虽然您 如果需要,可以 显式编写class 和Main
方法声明。
同一教程中后面的示例显示了大量的应用程序启动代码,仍然使用 top-level 语句。或者您可以创建一个新的 ASP.NET 核心应用程序,它将显示更多内容。