Ошибка с интерполяцией

210
25 мая 2017, 07:24

Здравствуйте, В проекте таких записей у меня очень много

AppState.AlertOD("Ошибка", $"Ошибка загрузки Guarantee.\n{obj.Error.Message}", ownwindow);

И во всех местах где написано так, показывает ошибку. Проект мне предал один человек а у него все работает.

Так как я начинающий не могу понять в чём проблема. Везде где знак доллара пишет:

Ошибка  553 В качестве оператора могут использоваться только выражения 
присваивания, вызова, инкремента, декремента, ожидания и создания нового 
объекта     `c:\users\user\desktop\project\od\dialogskr\guarantee.xaml.cs   497 55  OD`
Answer 1

Т.к. вы используете Visual Studio 2013, где по дефолту идет компилятор C# 5.0, вам следует либо поставить новую Visual Studio, либо обновить компилятор.

Обновить компилятор можно с помощью nuget package:

Install-Package Microsoft.Net.Compilers

https://www.nuget.org/packages/Microsoft.Net.Compilers/

Как верно заметил @Андрей, этим вы обновляете только компилятор, но IntelliSense в Visual Studio по-прежднему считает, что вы используете C# 5.0 и, как следствие, не понимает синтаксиса C# 6.0 и подчеркивает их как ошибки.

Answer 2

Нужна либо Visual Studio 2015 и выше, либо заменить конструкции

 $"Ошибка загрузки Guarantee.\n{obj.Error.Message}"

на

string.Format("Ошибка загрузки Guarantee.\n{0}", obj.Error.Message)
READ ALSO
Работа с WiFi на C#

Работа с WiFi на C#

День добрый! Суть моего вопроса заключается в следующем: возможно ли, используя C#, работать с WiFi, то есть получать список доступных сетей,...

593
Поиск файла из ListBox

Поиск файла из ListBox

Есть ListBox в который добавляются файлы через OpenFileDialogКак по нажатию на Button найти информацию в интернете о выбранной строке в ListBox? То есть пользователь...

268
SpecFlow передача параметров

SpecFlow передача параметров

Как в SpecFlow передать параметры типа object?

248
Как изменить формат дат в List<DateTime>?

Как изменить формат дат в List<DateTime>?

Добрый день, есть List, при попытки вывести все его элементы листа после дат еще добавляется время: "0103

293