extension-methods

Distinct () z lambda?

Racja, więc mam liczbę i chcę uzyskać z niej różne wartości. Używając System.Linq, istnieje oczywiście metoda rozszerzenia o ... amy Ieequalitycomparer ponieważ pakuje zgodne implementacje Equals i GetHashCode w jednym interfejsie. To chyba ma sens..

Która metoda działa lepiej:.Any () vs. Count ()> 0?

W przestrzeni nazw System.Linq możemy teraz rozszerzyć nasze IEnumerable o Any() i Count() metody rozszerzenia . Ostatnio po ... nie metodę rozszerzenia), która jest Count lub Length. Czy lepiej byłoby użyć tych, zamiast .Any() lub .Count()? Yea / nae ?

Czy Mogę dodać metody rozszerzenia do istniejącej klasy statycznej?

Jestem fanem metod rozszerzeń w C#, ale nie odniosłem sukcesu w dodaniu metody rozszerzenia do klasy statycznej, takiej jak C ... Console.ResetColor(); } } To nie dodało metody 'WriteBlueLine' do konsoli... źle to robię? Lub prosząc o niemożliwe?

Konwertuj ciąg znaków [] na int [] w jednym wierszu kodu za pomocą LINQ

Mam tablicę liczb całkowitych w postaci łańcuchowej: var arr = new string[] { "1", "2", "3", "4" }; Potrzebuję tablicy' p ... list.Add(j); } } Foo(list.ToArray()); Ale oba wyglądają brzydko. Czy są jakieś inne sposoby na wykonanie zadania?

Dlaczego nie ma metody rozszerzenia ForEach na IEnumerable?

Zainspirowane innym pytaniem o brakującą Zip funkcję: Dlaczego nie ma metody rozszerzenia ForEach w klasie Enumerable? Albo ... iek? Jedyną klasą, która otrzymuje metodę ForEach jest List<>. Czy jest jakiś powód, dla którego go brakuje(wydajność)?

Czy C# ma właściwości extension?

Czy C # ma właściwości rozszerzenia? Na przykład, Czy Mogę dodać właściwość rozszerzenia do DateTimeFormatInfo o nazwie ShortDateLongTimeFormat, która zwróci ShortDatePattern + " " + LongTimePattern?

Konwertuj string na typ nullable (int, double, itd…)

Próbuję dokonać konwersji danych. Niestety, większość danych jest w ciągach, gdzie powinny być int lub double, itp... Więc ... string' na ' T?' Jest jakiś sposób na obejście tego? Nie jestem zbyt obeznany z tworzeniem metod z wykorzystaniem generyków.

Kod odpowiadający słowu kluczowemu 'let' w wywołaniach łańcuchowych metody rozszerzenia LINQ

Używając funkcji kompilatorów C#, możesz napisać kod w stylu: var names = new string[] { "Dog", "Cat", "Giraffe", "Monkey", ... me.Length. Jaki jest równoważny zbiór wywołań metody rozszerzenia LINQ, który osiąga to, co robi tutaj słowo kluczowe "let"?

Co się dzieje w C#, gdy wywołujesz metodę rozszerzenia na obiekcie null?

Czy metoda jest wywoływana z wartością null czy też daje wyjątek null reference? MyObject myObject = null; myObject.MyExtens ... this a null reference exception? W takim przypadku nigdy nie będę musiał sprawdzać mojego parametru 'this' pod kątem null?

Wykrywanie docelowej wersji frameworka podczas kompilacji

Mam trochę kodu, który wykorzystuje metody rozszerzeń, ale kompiluje pod. NET 2.0 używając kompilatora w VS2008. Aby to ułatw ... yrektywa czasu kompilacji, której mogę użyć, aby włączyć tylko ExtensionAttribute, gdy docelowa wersja frameworka to. net 2?

Nie znaleziono rozszerzeń HtmlHelper (lub innych przestrzeni nazw dla widoków)

Nie wiem czy to miało miejsce w PR czy Beta, ale jeśli stworzę metodę rozszerzenia na HtmlHelper, to nie zostanie ona rozpozn ... Jeśli włączę @using SomeNamespace.Extensions w moim widoku brzytwy, to działa, ale bardzo bym raczej mieć to w Web.config

Refleksja w celu identyfikacji metod rozszerzenia

W C# czy istnieje technika wykorzystująca reflection do określenia, czy metoda została dodana do klasy jako metoda rozszerzen ... we jest, że podobna metoda byłaby dodana do rzeczywistej klasy przez programistę, a jeśli tak, kompilator odbierze tę metodę.

Przeciążenie operatora metodami rozszerzeń C#

Próbuję użyć metod rozszerzeń, aby dodać przeciążenie operatera do klasy C # StringBuilder. Konkretnie, biorąc pod uwagę Str ... nie przeciążeń operatorów za pomocą metod rozszerzenia jest możliwe? Jeśli tak, to jaki jest właściwy sposób, aby to zrobić?

Jak napisać metodę rozszerzenia w JavaScript?

Muszę napisać kilka metod rozszerzeń w JS. Wiem jak to zrobić w C#. Przykład: public static string SayHi(this Object name ... A następnie wywołane przez: string firstName = "Bob"; string hi = firstName.SayHi(); Jak zrobić coś takiego w JavaScript?

Jak dodać nowe metody do istniejącego typu W go?

Chcę dodać wygodną metodę util do typów tras i routerów gorilla/mux: package util import( "net/http" "github.com/0 ... Jak mam to osiągnąć? Czy mogę utworzyć nowy typ struktury, który ma anonimowy mux.Trasa i mux.Pola routera? Albo coś innego?

Przykład rozszerzenia Swift

Początkowo chciałem wiedzieć, jak zrobić coś takiego UIColor.myCustomGreen Abym mógł zdefiniować własne kolory i używać i ... konwencja plików i nazewnictwa)? co to jest rozszerzenie składnia? Jakie jest kilka prostych przykładów powszechnego użycia?

Jakie zalety metod rozszerzania znalazłeś? [zamknięte]

"niewierzący" w C# pytał mnie jaki jest cel rozszerzenia metod. Wyjaśniłem, że można wtedy dodawać nowe metody do obiektów, ... usze, w których użyłeś metod rozszerzeń, których nie mogłeś (lub nie powinieneś) użyć metody dodanej do Twojej własnej klasy?

Czy wywołanie metody rozszerzenia na referencji "null" (tzn. zdarzenia bez subskrybentów) jest złe?

Zło czy nie zło? public static void Raise(this EventHandler handler, object sender, EventArgs args) { if (handler != null ... u NullReferenceException, jeśli MyButtonClicked jest null. (Np. do zdarzenia MyButtonClicked nie ma słuchaczy). Zło czy nie?

Czy Mogę" pomnożyć " ciąg znaków (w C#)?

Załóżmy, że mam ciąg znaków, na przykład, string snip = "</li></ul>"; Chcę w zasadzie napisać to wiele razy, ... by to zaimplementować, zastanawiałem się tylko, czy nie ma jakiegoś dziwnego operatora łańcuchowego, o którym nie wiedziałem

Metody rozszerzenia muszą być zdefiniowane w niestandardowej klasie statycznej

Dostaję błąd: Metody rozszerzenia muszą być zdefiniowane w niestandardowej klasie statycznej On the line: public cl ... ) .Invoke(null, new object[] { source, lambda }); return (IOrderedQueryable<T>)result; } }