.NET Core控制台应用程序如何使用异步(Async)Main方法详解

(编辑:jimmy 日期: 2024/10/15 浏览:2)

前言

C# 7.1 及以上的版本允许我们使用异步的Main方法。下面话不多说了,来随着小编一起看看详细的介绍吧。

一.新建一个控制台应用程序

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

二.异步Main方法

我们直接将Main方法改为如下:

static async Task Main(string[] args)

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

可以看到报错了,提示我们是C# 7.1 的特性。我们有两种方法可以解决,其实最后都是殊途同归,只是操作不一样而已。

1.第一种方法-修改csproj文件

打开项目的csproj文件,添加如下代码:

 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
 <LangVersion>7.1</LangVersion>
 </PropertyGroup>

例如:

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

2.第二种方法-通过vs更改项目属性

在“解决方案管理器”界面中,选中项目,然后 右键->属性 -> Build

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

在弹出的界面中选中 C# 7.1

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

经过上面的更改以后,将不会报错了。

三.验证

我们在Main方法中,加入如下代码,获取百度首页的html:

class Program
{
 static async Task Main(string[] args)
 {
 var client = new HttpClient();
 var result = await client.GetStringAsync("https://www.baidu.com/");
 Console.WriteLine(result);
 Console.ReadKey();
 }
}

然后运行:

.NET Core控制台应用程序如何使用异步(Async)Main方法详解

本文所用代码:https://github.com/stulzq/BlogDemos/tree/master/AsyncConsoleApp (本地下载)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?