extension-methods

Обнаружение целевой версии платформы во время компиляции

У меня есть код, который использует методы расширения, но компилируется под .NET 2.0 с помощью компилятора в VS2008. Чтобы облегчить это, мне пришлось объявить ExtensionAttribute: /// <summary> /// ExtensionAttribute is required to define exte ...

Синтаксис методов расширения и синтаксис запросов

Я пытаюсь разобраться, есть ли подходящее время для использования стандартных ключевых слов linq или методов расширения linq с лямбда-выражениями. Они, кажется, делают то же самое, просто написаны по-разному. Это чисто вопрос стиля? var query = fr ...

Методы расширения должны быть определены в неуниверсальных статический класс

Я получаю сообщение об ошибке: методы расширения должны быть определены в неуниверсальных статический класс в строке: public class LinqHelper вот вспомогательный класс, основанный на коде Марка Гавелса. Я действительно смущен тем, что означ ...

В C#, что происходит, когда вы вызываете метод расширения на нулевом объекте?

метод вызывается с нулевым значением или он дает исключение нулевой ссылки? MyObject myObject = null; myObject.MyExtensionMethod(); // <-- is this a null reference exception? Если это так, мне никогда не нужно будет проверять мой параметр "this ...

Можно ли добавить методы расширения в существующий статический класс?

Я поклонник методов расширения в C#, но не имел никакого успеха в добавлении метода расширения в статический класс, такой как Console. например, если я хочу добавить расширение для консоли, называется 'WriteBlueLine', так что я могу пойти: Console. ...