Существуют ли встроенные методы расширения в .NET Framework, которые не применяются к LINQ? - PullRequest
0 голосов
/ 31 мая 2019

Для целей курса, который я разрабатываю, я ищу несколько примеров того, как Microsoft уже внедрила методы расширения самостоятельно.Но так как студенты еще не знакомы с LINQ, я хотел бы найти другой пример.

Итак, существуют ли какие-либо методы, определенные в .NET Framework, которые определены как метод расширения, но не относятся кв каркас LINQ или IEnumerable?

Ответы [ 4 ]

4 голосов
/ 31 мая 2019
Например,

.net использует их в GetCustomAttributes<T>.Смотри здесь .

3 голосов
/ 31 мая 2019

На самом деле их довольно много. Я скачал исходный код .Net Framework для версии 4.8 (май 2019 года). Чтобы сделать это самостоятельно, просто нажмите кнопку «Загрузить» на веб-сайте .

.

Распакуйте файл, затем откройте решение в Visual Studio и выполните поиск (используя регулярные выражения):

Класс. * Расширения

Мне было возвращено 61 посещение, я уверен, что вы сможете найти подходящие примеры для вашего курса. Я полагаю, что лучшим из них будет DoubleExtensions ( см. Здесь ), поскольку его легко понять.

1 голос
/ 01 июня 2019

Поскольку вы выполняете курсовую работу, возможно, ZipFileExtensions - хороший API. Люди, как правило, могут обернуться вокруг файлов .zip, и эти API, как правило, довольно просты в использовании.

0 голосов
/ 31 мая 2019

Да, есть множество примеров, вот некоторые основные моменты:

  1. Метод AsSpan () для строки, который реализован как метод расширения. Вот документы по нему.
  2. IsNormalized () и Normailize () - еще два метода расширения строк, которые достаточно просты в использовании. Вот документы по этим вопросам.
  3. Если вы хотите ввести своих учеников в Dependency Injection, то в классе Startup есть множество примеров практически для любого основного проекта asp.net.
...