2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能
原文:2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能
| title | author | date | CreateTime | categories |
|---|---|---|---|---|
|
VisualStudio 使用三个方法启动最新 C# 功能
|
lindexi
|
2019-11-29 08:58:50 +0800
|
2018-07-16 20:34:46 +0800
|
VisualStudio
|
本文告诉大家如何在 VisualStudio 打开最新的 C#,现在的微软更新 C# 很快,那么如何让 VisualStudio 在项目使用最新的
本文会告诉大家三个不同的方法,最后的方法是最推荐的
第一个方法
第一个方法是最简单的方法,右击项目属性,选择生成,可以看到下面界面
然后点击高级,选择最新语言版本,建议选择最新次要版本而不是直接选择是哪个版本
现在就可以使用最新的 C# 做出奇诡的业务,但是不告诉你除了在 Debug 需要设计还需要切换 Release 也设置,不然在 Debug 下可以使用,但是在 Release 就无法用最新的 C# 代码
第二个方法
如果升级了自己的 VisualStudio 项目为 VisualStudio 2017 项目格式,那么就很建议使用下面的方法,如何升级请看 从以前的项目格式迁移到 VS2017 新项目格式
打开项目的 csproj 文件,在一个PropertyGroup随便一个地方添加下面代码
<LangVersion>latest</LangVersion>
看起来的代码就是
-
<PropertyGroup>
-
<TargetFrameworks>netcoreapp2.0;net47</TargetFrameworks>
-
<LangVersion>latest</LangVersion>
-
<PackageId>lindexi.wpf.Mvvm</PackageId>
-
<RootNamespace>lindexi.wpf.Mvvm</RootNamespace>
-
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
-
<Authors>lindexi</Authors>
-
<RepositoryUrl>https://github.com/lindexi/UWP</RepositoryUrl>
-
<Description>
-
欢迎来我博客 lindexi.gitee.io
-
</Description>
-
</PropertyGroup>
第三个方法
在上面一个方法,可以看到在一个新的项目都需要添加一句代码,这个方法是在新项目添加一个文件。
在项目文件所在的文件夹创建一个文件Directory.Build.props,需要注意这个文件的名字是特殊,不能随便改
在这里文件添加下面代码
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
</PropertyGroup>
</Project>
因为 VisualStudio 会寻找文件夹存在的 Directory.Build.props 把这里的内容作为选项
2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能的更多相关文章
- 2018-8-10-VisualStudio-使用三个方法启动最新-C#-功能
title author date CreateTime categories VisualStudio 使用三个方法启动最新 C# 功能 lindexi 2018-08-10 19:16:52 +0 ...
- pycharm+anaconda在Mac上的配置方法 2019.11.29
内心os: 听人说,写blog是加分项,那他就不是浪费时间的事儿了呗 毕竟自己菜还是留下来东西来自己欣赏吧 Mac小电脑上进行python数据开发环境的配置 首先下载Anaconda,一个超好用的数据 ...
- c++11线程创建的三种方法
一.用一个初始函数创建一个线程 直接看代码:注意c++在运行一个可执行程序的时候(创建了一个进程),会自动的创建一个主线程,这个主线程和进程同生共死,主线程结束,进程也就结束了. #include & ...
- 2019.11.29 Mysql的数据操作
为名为name的表增加数据(插入所有字段) insert into name values(1,‘张三’,‘男’,20); 为名为name的表增加数据(插入部分字段) insert into name ...
- 2019.11.29 SAP SMTP郵件服務器配置 發送端 QQ郵箱
今天群裏的小夥伴問了如何配置郵件的問題,隨自己在sap裏面配置了一個 1. RZ10配置參數 a) 参数配置前,先导入激活版本 执行完毕后返回 b) 输入参数文件DEFAU ...
- Supervision meeting notes 2019/11/29
topic 分支: 1. subgraph/subsequence mining Wang Jin, routine behavior/ motif. Philippe Fournier Viger ...
- EOJ Monthly 2019.11 E. 数学题(莫比乌斯反演+杜教筛+拉格朗日插值)
传送门 题意: 统计\(k\)元组个数\((a_1,a_2,\cdots,a_n),1\leq a_i\leq n\)使得\(gcd(a_1,a_2,\cdots,a_k,n)=1\). 定义\(f( ...
- [Android] Android 异步定时任务实现的三种方法(以SeekBar的进度自动实现为例)
[Android] Android 定时异步任务实现的三种方法(以SeekBar的进度自动实现为例) 一.采用Handler与线程的sleep(long)方法 二.采用Handler与timer及Ti ...
- [BUUOJ记录] [强网杯 2019]随便注(三种方法)
本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject' ...
随机推荐
- 9.为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗?
作者:中华石杉 面试题 为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗? 面试官心理分析 从这个问题开始就进行分布式系统环节了,现在出去面试分布式都成标配了,没有哪个公司不问问 ...
- 在VideoFileClip函数中获取“OSError:[WinError 6]句柄无效”
我正在使用python通过导入moviepy库创建一个程序,但收到以下错误: from moviepy.editor import VideoFileClip white_output = 'vide ...
- vue 开发系列(十) VUE 作用域插槽
使用场景 官方解释,有时让插槽内容能够访问子组件中才有的数据是很有用的.比如我们在使用ant-design-vue 的表格控件时. <a-table-column title="注释& ...
- 17、DNS服务器
DNS domain name system 域名系统 [root@li ~]# vim /etc/nsswitch.conf hosts: files dns --涉及到 ...
- JAVAWEB复习day01
一.基础知识 1.一个html文件开始和结束的标签<html></html> 2.html的两部分<head>设置相关信息</head>,<bod ...
- Ubuntu下部署Portainer管理docker
在上一篇文章中,我们部署了Shipyard来管理docker集群,总体比较简单,而且Shipyard界面风格很简约,还是比较喜欢的,但是正如提出的node节点无法显示bug,以及该项目早已停止维护,让 ...
- os模块补充以及序列化模块
os模块补充以及序列化模块 一.os模块的补充 1.os.path.abspath 能把存在的相对路径的绝对路径显示出来 path = os.path.abspath("连达day19. ...
- JS高阶---IIFE&&函数前加;
IIFE( 立即调用函数表达式)是一个在定义时就会立即执行的 JavaScript 函数. 全称为Immediately Invoked Function Expression 有时如果不加:会出现一 ...
- 【OI备忘录】dalao博文收藏夹
[dalao学习笔记总览] [数学] 数论分块:数论分块 矩阵树定理Matrix_Tree:矩阵树Matrix-Tree定理与行列式 杨氏矩阵:杨氏矩阵和钩子公式 Hall定理:Hall定理学习小记 ...
- 常用开窗函数总结(hive、sparkSQL可执行)
一:根据某个字段排序 测试数据: SQL> select * from sscore; NAME SCORE ---------- ----- aa 99 bb ...