Описание тега c#-7.1
Use this tag for questions specific to C# 7.1, released on 16 August 2017. In most cases you should also specify the C# tag.
3
ответа
Использование await Task.Factory.StartNew для метода вернется немедленно
Я запускаю следующий код (Консольное приложение C#7.1), и я не могу понять, почему разница в поведении. Если я жду регулярного вызова асинхронного метода или Task.Run - он работает как положено (то есть приложение не возвращается сразу). Но если я и…
22 июн '18 в 07:08
1
ответ
Буква C# по умолчанию всегда возвращает False, .Equals()
Как я могу сравнить ValueType использование литерала по умолчанию? Я пробовал это, но это возвращает _darkBlue.Equals(default) всегда возвращается false: static Color _darkBlue; public static Color DarkBlue => _darkBlue.Equals(default) ? (_darkBl…
22 мар '18 в 21:50
2
ответа
Использование предиката Where для фильтрации detail.List с другим списком
Я пытаюсь получить набор записей Master-Detail на основе списка строк, которые мне нужны, чтобы соответствовать столбцу ссылочного номера каждой детали для каждого мастера. Так, например, у меня есть это в виде списка строк: string[] listToFilterFor…
06 май '18 в 19:28
5
ответов
C# 7.1 не может быть опубликован
У меня есть веб-приложение ASP.NET Core C#. Я сделал некоторые изменения, которые теперь используют функции C# 7.1. Я изменил версию проекта, поэтому он компилируется и работает нормально. Однако, когда я пытаюсь опубликовать проект, я получаю сообщ…
22 дек '17 в 19:55
0
ответов
Непонимание сродства потока при использовании Async/Await
Я работаю над Async/Await, у меня неправильное представление о том, что означает async / await. // My background : I think every method which has the 'async' modifier will runs into a new thread, and when we use await keyword before calling it, we a…
08 авг '18 в 18:09
1
ответ
C# 7.1 и 7.2 Span и ReadOnlySpan
Я использую версию Visual Studio 15.5.6. Когда я создаю простой проект консольного приложения, я не могу использовать ReadOnlySpan или же Span или же Memory,Я установил проект на.Net Framework 4.7.1, потому что в Visual Studio это последняя версия. …
10 фев '18 в 09:02
2
ответа
Async/Await и ConfigureAwait - выполнение задачи позже с неизвестной сигнатурой метода
Я пытался найти лучший способ решить эту проблему. Я часами гуглял и наткнулся на несколько хороших ресурсов (большинство из них здесь), но я до сих пор не могу понять, какой ЛУЧШИЙ способ подойти к моей проблеме. Большинство советов, которые я наше…
14 июн '18 в 14:33
1
ответ
Когда создавать и распространять "справочные сборки"?
C# 7.1 ввел несколько новых параметров командной строки, чтобы помочь создать "эталонные сборки". По документации он выводит сборку, которая: замените тела их методов единичным нулевым телом, но включите все члены, кроме анонимных типов. Я нашел ин…
11 апр '18 в 14:20
1
ответ
Почему это преобразование группы методов неоднозначно в C# 7.2 и ниже?
Учитывая следующий класс: public class Foo { public Foo(int i, double d) { Integer = i; Double = d; } public int Integer {get;} public double Double {get;} private static Random rand = new Random(); public static Foo CreateRandom() => new Foo(ran…
20 ноя '18 в 18:21
1
ответ
Использование литерала C# 7.1 по умолчанию в необязательном аргументе NULL приводит к неожиданному поведению
C# 7.1 представляет новую функцию под названием "Литералы по умолчанию", которая позволяет новым default выражения. // instead of writing Foo x = default(Foo); // we can just write Foo x = default; За Nullable<T> типы, значение по умолчанию nu…
29 окт '17 в 07:32
2
ответа
IWebHost: вызов Run() против RunAsync()
Когда создается новый проект ASP.NET Core 2.0, шаблон Main метод в Program класс выглядит примерно так: public static void Main(string[] args) { BuildWebHost(args).Run(); // BuildWebHost returns an IWebHost } Но так как C# 7.1, Main Метод может быть…
26 янв '18 в 03:53
1
ответ
async Task Main() в приложении WinForms с асинхронной инициализацией
У нас есть приложение winforms, которое использует процесс асинхронной инициализации. Упрощенно можно сказать, что приложение будет запускать следующие шаги: Init - работает асинхронно Показать MainForm Application.Run () Существующий и работающий к…
18 апр '18 в 14:42
5
ответов
Переключение на основе общего типа аргумента
В C# 7.1 ниже действительный код: object o = new object(); switch (o) { case CustomerRequestBase c: //do something break; } Однако я хочу использовать оператор переключения шаблонов в следующем сценарии: public T Process<T>(object message, IMe…
03 дек '18 в 16:25
5
ответов
Использование C# 7.1 с MSBuild
Чтобы использовать новые языковые функции C# 7.1 в Visual Studio 2017, добавьте параметр <LangVersion>latest</LangVersion> в файл (ы) вашего проекта. Тем не менее, создание таких проектов из MSBuild (версия 15.3.409.57025, расположенная …
26 сен '17 в 07:02
0
ответов
xUnit test, как реализовать факт юнит-тест для конкретного метода
Я хотел бы знать, как я могу реализовать модульный тест для этого метода private void ConfigLogging(IConfigurationRoot configuration) { var nLogConfigFile = Path.Combine(configuration["environment:root"], "configs", configuration["application:config…
28 янв '19 в 09:10
0
ответов
async Main не компилируется
Создано пустое консольное приложение: namespace ClientUI { class Program { static async void Main(string[] args) { await Task.Delay(1000); } } } Компилятор выдает: Код серьезности Описание Ошибка в файле подавления строки файла проекта CS5001 Програ…
19 мар '18 в 16:02
5
ответов
В чем разница между "основным" и "асинхронным основным"?
Здесь у меня есть две функции static int Main() а также static async Task<int> Main(), Может кто-нибудь сказать мне, в чем разница между ними? static int Main() { return DoAsyncWork().GetAwaiter().GetResult(); } static async Task<int> Ma…
20 сен '18 в 06:15
1
ответ
C#: литерал по умолчанию и вывод типа на обнуляемые структуры
Начиная с C# 7.1, можно получить значения по умолчанию, используя default без указания типа. Я попробовал это сегодня и нашел результаты для обнуляемых структур и типов обнуляемых значений несколько нелогичными. [TestFixture] public class Test { pri…
14 мар '19 в 08:50
1
ответ
Как создать z z-файл gz из байтового массива, сгенерированного из gziptream
У меня есть основное приложение.net, в котором я создаю в памяти zip с тремя файлами и отправляю его в байтовом массиве в другое клиентское приложение. Сейчас я пытаюсь в своем клиентском приложении сохранить этот байтовый массив в ZIP-файл.gz. Мой …
11 май '19 в 11:14
1
ответ
Различные версии C# используются в некоторых DLL-решениях.
У меня есть решение, состоящее из 10+ проектов. Я несу основную ответственность за один из этих проектов, который в основном представляет собой DLL-библиотеку, которая вызывается другими частями решения. Я бы посчитал лучше изменить версию C# с 7.0 …
03 июл '19 в 13:58