在VS2015中,SQL Server项目模板包括。带有C#6.0的SQLCLR无法编译

时间:2017-11-28 16:41:52

标签: sql-server templates visual-studio-2015 sqlclr c#-6.0

VS2015“SQL Server数据库项目”模板不支持编译C#6.0(.Net4.6)的SQLCLR函数。 错误消息是

  

“CSC:错误:CS1617:/ langversion的选项'6'无效;必须是   ISO-1,ISO-2,3,4,5或默认“。

我搜索并发现很多网络项目,例如 Error Invalid option '6' for /langversion; must be ISO-1, ISO-2, 3, 4, 5 or Default

在这里,您将更改release()中的编译器,如

  

型=“Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,   Microsoft.CodeDom.Providers.DotNetCompilerPlatform,Version = 1.0.0.0,   Culture = neutral,PublicKeyToken = 31bf3856ad364e35“

但是我,我的数据库项目中没有app,也没有web.config。那么我该怎么做才能为这个项目设置编译器呢? 非常感谢。

1 个答案:

答案 0 :(得分:1)

这似乎与以下问题非常相似,也许是重复的,也在S.O.上:

Automatically implemented properties must define both get and set accessors

问题是正在使用的C#编译器。如果您转到开发人员命令提示符并运行 CSC.exe ,您应该看到一个横幅,指出编译器最多只支持C#5。它提供了一个URL,从哪里获取更新的编译器。

如果确实需要在项目中指定编译器,那么可能需要手动将其添加到 .sqlproj 文件中,尽管似乎没有现有元素设置此值。