Вопросы по теме 'extension-methods'

Почему мои расширения HtmlHelper не работают?
Я создаю веб-сайт ASP.Net MVC. Вместо того, чтобы объединять все в одном проекте, я решил разделить сеть, модель и контроллер на разные проекты в одном решении, которые ссылаются друг на друга. Ссылка выглядит так: Интернет --- [ссылки]...
8506 просмотров

Расширения C #
Обычно я очень экономно использую методы расширения. Когда я чувствую необходимость написать метод расширения, мне иногда хочется перегрузить метод. Мой вопрос: что вы думаете о методах расширения, вызывающих другие методы расширения? Плохая...
895 просмотров
schedule 14.11.2023

Является ли вызов метода расширения для нулевой ссылки (то есть события без подписчиков) злом?
Зло или не зло? public static void Raise(this EventHandler handler, object sender, EventArgs args) { if (handler != null) { handler(sender, args); } } // Usage: MyButtonClicked.Raise(this, EventArgs.Empty); // This works too!...
3168 просмотров
schedule 03.07.2022

Как я могу предотвратить появление общедоступного класса, предоставляющего методы расширения, в Intellisense?
Есть ли способ «скрыть» имя класса, единственной целью которого является предоставление методов расширения, от Intellisense? Я хотел бы удалить имя класса из списка Intellisense, но мне нужно, чтобы методы расширения класса были доступны для...
1860 просмотров
schedule 22.12.2022

Какой метод работает лучше: .Any () vs .Count () ›0?
в пространстве имен System.Linq теперь мы можем расширить наш IEnumerable , чтобы иметь Any () и Count () методы расширения . Недавно мне сказали, что если я хочу проверить, что коллекция содержит 1 или более элементов внутри, я должен...
172772 просмотров

Можно ли писать собственные методы расширения в системном пространстве имен?
В последнее время я довольно часто использую методы расширения и нашел для них множество применений. Единственная проблема, с которой я столкнулся, - это вспомнить, где они находятся и какое пространство имен использовать, чтобы получить методы...
2586 просмотров
schedule 18.01.2023

Возврат фрагментов массива
Мне нужно получить фрагменты массива из массива. Мне надоело использовать Array.Copy(). new ArraySegment(..).Array возвращает исходный [полный] массив. Ниже приведено то, что я придумал, но я чувствую, что это довольно неубедительно. Есть лучший...
1340 просмотров
schedule 03.06.2024

Использование методов расширения, определенных в C # из кода F #
У меня есть ряд методов расширения, определенных для различных классов в библиотеке C #. В настоящее время я пишу код на F #, и вместо того, чтобы переписывать этот код, я просто хотел бы использовать существующие методы расширения в моем коде F #....
2341 просмотров
schedule 15.03.2022

Использование методов расширения с .NET Framework 2.0
В Visual Studio 2008 Можно ли создать метод расширения для работы в проекте .NET Framework 2.0?
4500 просмотров

Использование методов расширения для повышения читабельности
Каково общее мнение об использовании методов расширения, которые не служат никакой другой цели, кроме повышения удобочитаемости? Без использования методов расширения у нас может быть метод IEnumerable<DependencyObject>...
150 просмотров
schedule 21.08.2022

Методы расширения и их значение в разработке программного обеспечения (или это действительно хорошая идея?)
Итак, MS представляет методы расширения для C # 3.0 . По сути, он позволяет добавлять новые методы к существующим классам без необходимости создавать подклассы или изменять его реализацию. В голове сразу же зазвонили тревожные звонки. 1) Вы...
543 просмотров
schedule 12.07.2022

Distinct () с лямбдой?
Итак, у меня есть перечислимое число, и я хочу получить от него разные значения. При использовании System.Linq , конечно же, есть метод расширения под названием Distinct . В простом случае его можно использовать без параметров, например: var...
427618 просмотров
schedule 23.09.2022

Автоматическое выполнение цикла
Я не знаю, имеет ли название смысл, но в приложении, которое я пишу, есть множество (расширяющих) методов. Простой пример: Объекты: Matter (Burn, Explode, Destroy, Freeze, Heat, Cool) Atom (Attach, Detach) <many more> И...
218 просмотров

Переопределение ToString() для List‹MyClass›
У меня есть класс MyClass, и я хотел бы переопределить метод ToString() экземпляров List: class MyClass { public string Property1 { get; set; } public int Property2 { get; set; } /* ... */ public override string ToString() {...
27968 просмотров

Могут ли методы расширения C# обращаться к закрытым переменным?
Можно ли получить доступ к закрытым переменным объекта с помощью метода расширения?
32355 просмотров
schedule 26.11.2023

Что такого хорошего в методах расширения?
Возможный дубликат: ​​Какие преимущества Вы нашли способы расширения? Хорошо, во-первых, я понимаю, что это звучит спорно, но я не хочу конфронтации. Я задаю серьезный вопрос из искреннего любопытства (или, может быть, лучше сказать...
2018 просмотров
schedule 19.11.2023

Рандомизация коллекции с использованием метода расширения
Возможный дубликат: C #: Является ли использование Random и OrderBy хорошим алгоритмом перемешивания? Я хочу создать метод расширения, который должен перемешивать элементы в коллекции. Могу ли я улучшить следующее? public static...
1025 просмотров
schedule 18.04.2024

List‹T›.ForEach против пользовательского расширения IEnumerable‹T›
Скажем, у меня есть класс: public class MyClass { ... } и метод веб-сервиса, который возвращает IEnumerable<MyClass> Потребитель веб-сервиса определяет некоторый метод: public void DoSomething(MyClass myClass) { ... }...
2805 просмотров
schedule 01.03.2022

Использование функций ms: xpath внутри XPathExpression
Я пытаюсь использовать функции расширения Microsoft XPath (например, ms: string-compare http://msdn.microsoft.com/en-us/library/ms256114.aspx ) внутри объекта XPathExpression. Эти функции являются расширениями внутри библиотеки MSXML, и если я...
3959 просмотров
schedule 24.12.2023

Лямбды в методах расширения: возможная утечка памяти?
Я только что ответил на довольно простой вопрос с помощью метода расширения. Но, записав это, я вспомнил, что вы не можете отписать лямбду от обработчика событий. Пока большой проблемы нет. Но как все это ведет себя в рамках метода расширения...
979 просмотров
schedule 06.07.2023