繁体   English   中英

让VS2015验证C#的早期语法以与VS2013保持兼容性的方法

[英]Way to get VS2015 to validate for earlier syntax of C# to maintain compat with VS2013

我遇到的一个特定问题是VS2015允许您使用更新的C#语法,例如, public string MyProperty => _myProperty; 以.NET 4.0框架项目为目标,然后在VS2013中打开该项目的其他人遇到编译器错误。

有没有一种方法可以配置VS2015,以便它警告或错误特定于C#6? 或者说另一种方式,我可以告诉VS2015我想要针对哪个版本的C#?

是的,但这需要在每个项目的基础上完成。 该选项在项目属性的“生成”菜单中可用。 单击右下角的“高级”,然后选择所需的语言版本。

在此处输入图片说明

注意:存在一个VS2015错误(已在更新1中修复),该错误导致对仅获取自动属性的错误否定。 为了获得最佳结果,请确保已安装最新更新。

为了支持已接受的答案,以在100多个项目中快速实现此目的,并获得所有配置而不仅仅是特定的配置,我批量编辑了csproj文件,并插入了<LangVersion>5</LangVersion>节点作为第一个子节点在第一个裸露的无条件<PropertyGroup>节点内:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  <PropertyGroup>
    <LangVersion>5</LangVersion>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM