.NET Core. Элементы, начинающиеся с символа "@"

При работе с .NET Core вы можете столкнуться с элементами, которые начинаются с символа "@". В этой статье мы рассмотрим различные примеры использования таких элементов и проанализируем их роль в коде.

1. Строковые литералы:

В .NET Core строковые литералы могут быть заключены в одинарные кавычки ('...') или двойные кавычки ("..."). Если строка содержит специальные символы, такие как обратная косая черта (\), кавычки или символ новой строки, то для её обозначения используется символ "@" перед началом строки. Это позволяет избежать необходимости экранирования специальных символов.

Пример:
string normalString = "Hello, world!"; // Обычная строка в двойных кавычках
string escapedString = "C:\\Windows\\System32"; // Специальный символ обратной косой черты экранирован
string verbatimString = @"C:\Windows\System32"; // Использование символа @ для включения специального символа в строку

2. Регулярные выражения:

Регулярные выражения часто используются для поиска и замены текста в строках. В .NET Core они также начинаются с символа "@", чтобы указать, что последующий код является регулярным выражением.

Пример:
string pattern = @"\d+"; // Регулярное выражение для поиска одного или более цифр
Regex regex = new Regex(pattern);
Match match = regex.Match("123abc");
if (match.Success) {
    Console.WriteLine($"Найдено: {match.Value}"); // Выведет '123'
}

3. Атрибуты:

Атрибуты в .NET Core используются для добавления метаданных к элементам кода, таким как классы, методы, свойства и т.д. Они начинаются с символа "@", за которым следует имя атрибута.

Пример:
[Serializable] // Атрибут Serializable применяется к классу
public class ExampleClass {
    // ...
}

4. Аннотации:

Аналогично атрибутам, аннотации также добавляют метаданные к элементам кода. Однако они предназначены для использования в средах выполнения, таких как фреймворк ASP.NET Core.

Пример:
using Microsoft.AspNetCore.Mvc.Annotations;

[HttpGet] // Аннотация HttpGet указывает, что метод является HTTP GET-методом
public IActionResult GetData() {
    // ...
}

5. Макросы препроцессора:

В C# макросы препроцессора используются редко, но они всё же существуют. Они начинаются с символа "@", за которым следует директива препроцессора.

Пример:
#define DEBUG

// ...

#if DEBUG
Console.WriteLine("Этот код выполняется только в режиме отладки.");
#endif
Поделиться:

Похожие публикации

Тут ничего нет

Нет комментариев