Обложка канала

.NET Разработчик

Опытный разработчик не так давно зашёл в .Net и поставил цель получить сертификат Microsoft. Свой ежедневный прогресс он описывает на канале .Net Разработчик. Заметки об изученном материале, советы по повышению производительности и поддержке мотивации, ин

.NET Разработчик

4 года назад
Открыть в
День 1334. #ЧтоНовенького Атрибут StringSyntax Visual Studio ещё с версии 2019 поддерживала подсветку синтаксиса в регулярных выражениях или подсказки при форматировании даты. Исторически это был жёстко закодированный список методов, где было известно, что строковые аргументы в действительности будут регулярными выражениями или форматом даты. Однако это решение не масштабировалось. Существует много API, принимающих строки, которые должны соответствовать определенному синтаксису, например, JSON, XML, формат даты, Guid и т.п. В .NET 7 представлен новый атрибут StringSyntax, который используется в .NET 7 для более чем 350 параметров типа string, string[] и ReadOnlySpan<char>, свойств и полей, чтобы обозначить для клиента, какой синтаксис ожидается для передачи или установки. Теперь любой метод, который хочет указать, что строковый параметр, принимает регулярное выражение, добавить атрибут на параметр:
void MyMethod(
 [StringSyntax(StringSyntaxAttribute.Regex)]
 string input)

Visual Studio 2022 обеспечит ту же проверку синтаксиса, подсветку синтаксиса и IntelliSense, что и для всех других методов, связанных с Regex. Строковые параметры, свойства и поля во всех основных библиотеках .NET теперь помечены атрибутами, чтобы обозначить, являются ли они регулярными выражениями, JSON, XML, строками составного формата, URL, строками числового формата и так далее. Подробнее об этом в недавнем видео от Ника Чапсаса https://youtu.be/Y2YOaqSAJAQ Источник: https://devblogs.microsoft.com/dotnet/regular-expression-improvements-in-dotnet-7/#stringsyntaxattribute-regex