C# 中?.的语法解释

复制代码
 /// <summary>
        /// 下载方法
        /// </summary>
        private UpdateWork DownLoad()
        {
            //截取文件名
            //构造文件完全限定名,准备将网络流下载为本地文件
            using (WebClient web = new WebClient())
            {
                foreach (var item in UpdateVerList)
                {
                    try
                    {
                        LogTool.AddLog("更新程序:下载更新包文件" + item.ReleaseVersion);
                        web.DownloadFile(item.ReleaseUrl, tempPath + item.ReleaseVersion + ".zip");
                        OnUpdateProgess?.Invoke(60 / UpdateVerList.Count);
                    }
                    catch (Exception ex)
                    {
                        LogTool.AddLog("更新程序:更新包文件" + item.ReleaseVersion + "下载失败,本次停止更新,异常信息:" + ex.Message);
                        throw ex;
                    }
                }
                return this;
            }
        }
复制代码

像语句里面的?.的意思是:如果前面的OnUpdateProgess不为空,则执行后面的Invoke,以此类推。

posted @   卑微小老弟  阅读(4338)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示