Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
功能';插值字符串';在C#5中不可用。请使用语言版本6或更高版本。_C#_Asp.net Mvc 5_String Interpolation - Fatal编程技术网

功能';插值字符串';在C#5中不可用。请使用语言版本6或更高版本。

功能';插值字符串';在C#5中不可用。请使用语言版本6或更高版本。,c#,asp.net-mvc-5,string-interpolation,C#,Asp.net Mvc 5,String Interpolation,当我放入Razor视图时,下面的代码行没有编译 var extPropLookupNameCompania = $"extension_{SettingsHelper.ClientId.Replace("-", "")}_{"Compania"}"; 然而,在控制器中,同样的线路工作得非常好 为什么我不能在razor视图上使用字符串插值?或者我需要配置一些东西?您必须用大括号将其封装,如下所示: 编辑:我更新了,因为缺少一个卷发 var extPropLookupNameCompania =

当我放入Razor视图时,下面的代码行没有编译

var extPropLookupNameCompania = $"extension_{SettingsHelper.ClientId.Replace("-", "")}_{"Compania"}";
然而,在控制器中,同样的线路工作得非常好


为什么我不能在razor视图上使用字符串插值?或者我需要配置一些东西?

您必须用大括号将其封装,如下所示:

编辑:我更新了,因为缺少一个卷发

var extPropLookupNameCompania = $("{extension_{SettingsHelper.ClientId.Replace("-", "")}_{"Compania"}");
我成功地尝试了以下操作:

 @($"It is {DateTime.Now}")

如果您在.NET Framework 4.5.1项目中遇到此错误,升级到4.5.2可以解决此问题。

关键是在web.config中查看编译器选项=“/langversion:6”以下部分。如果没有它,我尝试在.cshtml文件中使用字符串插值时会出错



我明白了:严重性代码描述项目文件行错误CS0019运算符“-”不能应用于“string”和“string”类型的操作数。我在开头添加了一个大括号。现在好点了吗?你必须自己检查一下。这就是我添加principle sample的原因。不,这不起作用,我仍然从first co收到相同的错误嗯,你的行很好,但我的行不行。用
{Compania}替换
{Compania}
怎么样
?如果错误没有消失,安装以下NuGet软件包可能会有所帮助。
PM>安装软件包Microsoft.CodeDom.Providers.DotNetCompilerPlatform
以下是有关CodeDom软件包的一些详细信息:我在.NET Framework 4.6上,仍然会遇到此错误。真正的答案是@omufeed或tlbignerd的评论,而不是标记为ans的内容对我有效的是安装Microsoft.CodeDom.Providers.DotNetCompilerPlatform