Вопросы с тегом 'c#-6.0'

С# 6.0 поставляется вместе с Roslyn (платформа .NET Compiler) и Visual Studio 2015.
1

Как использовать тернарный оператор внутри интерполированной строки?

Я смущен, почему этот код не компилируется: var result = $"{fieldName}{isDescending ? " desc" : string.Empty}"; Если я разделить его, он отлично работает: var desc = isDescending ? " desc" : string.Empty; var result = $"{fieldName}{desc}";
05 авг. '15 в 22:45
4

Что делает знак вопроса и точечный оператор?. означает в С# 6.0?

С С# 6.0 в предварительном просмотре VS2015 у нас есть новый оператор ?., который можно использовать следующим образом: public class A { string PropertyOfA { get; set; } } ... var a = new A(); var foo = "bar"; if(a?.PropertyOfA != foo) { /...
05 февр. '15 в 19:09
4

Работает ли С# 6.0 на .NET 4.0?

Я создал образец проекта, в качестве примера которого были использованы свойства С# 6.0 - нулевое распространение и инициализация свойств, установите целевую версию .NET 4.0 и он... работает. public class Cat { public int TailLength { get; set; ...
08 мар. '15 в 0:22
5

Что такое присвоение => в С# в сигнатуре свойства

Я наткнулся на код, который сказал public int MaxHealth => Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0; Теперь я немного знаком с лямбда-выражениями. Я просто не видел, чтобы он и...
01 авг. '15 в 17:51
5

Как включить функцию С# 6.0 в Visual Studio 2013?

Я просматривал последние функции, введенные в С# 6.0, и просто последовал примеру инициализатора свойств auto, class NewSample { public Guid Id { get; } = Guid.NewGuid(); } но моя IDE не распознала синтаксис. Мне интересно, как я могу включи...
23 нояб. '14 в 20:27
13

Какова цель имени?

Версия 6.0 получила новую функцию nameof, но я не могу понять ее цели, поскольку она просто принимает имя переменной и изменяет ее на строку в компиляции. Я думал, что это может иметь определенную цель при использовании <T>, но когда я пытаю...
29 июл. '15 в 9:04
5

В чем смысл запланированного модификатора доступа к закрытой защите?

Как часть Roslyn документации по GitHub, есть страница под названием Состояние реализации функции языка, с плановыми языковыми функциями для С# и VB. Одна особенность, с которой я не мог окутать голову, был private protected модификатор доступа: p...
04 апр. '14 в 7:24
6

Как отключить поддержку С# 6 в Visual Studio 2015?

Фон У нас есть проект, который мы разрабатываем в VS 2015 с включенным С# 6, который иногда должен быть открыт разработчиками, использующими VS 2013 без С# 6. Мы не намерены использовать С# 6 в этом конкретном решении (насколько мне бы хотелось). ...
26 мая '15 в 14:37
7

Функции С# 6.0, не работающие с Visual Studio 2015

Я тестирую Visual Studio 2015 с С# 6.0, но функции языка не работают. В веб-приложении MVC следующий код компилируется: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } Однако, когда я запускаю приложение чере...
15 янв. '15 в 17:06
1

Как вы используете стенографические строки с интерполяцией?

В С# 6 появилась новая функция: интерполированные строки. Они позволяют помещать выражения непосредственно в код, а не полагаться на индексы: string s = string.Format("Adding \"{0}\" and {1} to foobar.", x, this.Y()); становится: string s = $"Ad...
26 июл. '15 в 15:12
2

Определяется ли имяof() во время компиляции?

В С# 6 вы можете использовать оператор nameof(), чтобы получить строку, содержащую имя переменной или типа. Проверяется ли это во время компиляции или во время выполнения через некоторый API Roslyn? Вы можете прочитать о nameof() операторе answer...
26 окт. '14 в 12:44
3

Как обновить msbuild до С# 6?

Я хочу использовать С# 6 в моем проекте (нулевое распространение, другие функции). Я установил VS 2015 на свой компьютер, и он блестяще работает и строит тестовый код, например var user = new SingleUserModel(); //all model fields are null var test ...
14 авг. '15 в 10:26
1

Первичные конструкторы больше не компилируются в VS2015

До сегодняшнего дня я мог бы использовать первичные конструкторы, такие как: public class Test(string text) { private string mText = text; } Чтобы это сделать, в предыдущей CTP-среде Visual Studio мне пришлось добавить это в файл csproj: <...
13 нояб. '14 в 18:20
1

Как использовать функцию С# 6 "Использование статического"?

Я смотрю на пару новых функций в С# 6, в частности, "using static". с использованием static - это новый вид использования, который позволяет импортировать статические элементы типов непосредственно в область. (Нижняя часть сообщения в блоге) ...
06 авг. '15 в 9:46
3

Где я могу найти спецификацию языка С# 6.0?

Я знаю, где найти С# 5 Language Specification, но я не могу найти С# 6 Language Specification в любом месте. Где спецификация языка С# 6?
24 июл. '15 в 18:48