Jaka jest różnica między zwrotem IQueryable<T>a powrotem IEnumerable<T>, kiedy należy preferować jedno nad drugim? IQueryable<Customer> custs = from c in db.Customers where c.City == "<City>" select c; IEnumerable<Customer> custs = from c in db.Customers where c.City == "<City>" select c;
Chciałbym zrobić równoważne z następującymi w LINQ, ale nie wiem, jak to zrobić: IEnumerable<Item> items = GetItems(); items.ForEach(i => i.DoStuff()); Jaka jest prawdziwa składnia?
Mam wątpliwości co do działania Enumeratorów i LINQ. Rozważ te dwa proste wybory: List<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct().ToList(); lub IEnumerable<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct(); Zmieniłem nazwy …
Jaka jest różnica między IQueryable<T>i IEnumerable<T>? Zobacz także Jaka jest różnica między IQueryable i IEnumerable, która pokrywa się z tym pytaniem.
Moje pytanie jako tytuł powyżej. Na przykład, IEnumerable<T> items = new T[]{new T("msg")}; items.ToList().Add(new T("msg2")); ale w końcu ma tylko 1 przedmiot. Czy możemy mieć taką metodę items.Add(item)? podobnie jak List<T>
Czy istnieje wspólny sposób przekazywania pojedynczego elementu typu Tdo metody, która oczekuje IEnumerable<T>parametru? Językiem jest C #, wersja ramowa 2.0. Obecnie używam metody pomocniczej (to .Net 2.0, więc mam całą masę rzutowych / rzutujących metod pomocniczych podobnych do LINQ), ale to po prostu wydaje się głupie: public static class IEnumerableExt …
Biorąc pod uwagę następujący kod i sugestie podane w tym pytaniu , postanowiłem zmodyfikować tę oryginalną metodę i zapytać, czy w IEnumarable są jakieś wartości, zwróć ją, jeśli nie, zwróć IEnumerable bez wartości. Oto metoda: public IEnumerable<Friend> FindFriends() { //Many thanks to Rex-M for his help with this one. //https://stackoverflow.com/users/67/rex-m …
private IEnumerable<string> Tables { get { yield return "Foo"; yield return "Bar"; } } Powiedzmy, że chcę je powtórzyć i napisz coś takiego jak przetwarzanie #n z #m. Czy istnieje sposób, aby dowiedzieć się o wartości m bez iteracji przed moją główną iteracją? Mam nadzieję, że wyraziłem się jasno.
Mam IEnumerable<T>metodę, której używam do znajdowania formantów na stronie WebForms. Ta metoda jest rekurencyjna i mam pewne problemy ze zwróceniem żądanego typu, gdy yield returnzwraca wartość wywołania rekurencyjnego. Mój kod wygląda następująco: public static IEnumerable<Control> GetDeepControlsByType<T>(this Control control) { foreach(Control c in control.Controls) { if (c is T) { yield …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 11 miesięcy temu . Popraw to pytanie Czy ktoś może mi wyjaśnić IEnumerable i IEnumerator? na przykład, kiedy użyć …
Wiem, że możliwe jest rzutowanie listy elementów z jednego typu na inny (biorąc pod uwagę, że twój obiekt ma metodę publicznego jawnego operatora jawnego, aby wykonać rzutowanie) w następujący sposób: List<Y> ListOfY = new List<Y>(); foreach(X x in ListOfX) ListOfY.Add((Y)x); Ale czy nie można rzucić całej listy jednocześnie? Na przykład, …
Mam dwa wystąpienia IEnumerable<T>(z tym samym T). Chcę nowego wystąpienia, IEnumerable<T>który jest połączeniem obu. Czy jest to metoda wbudowana w .Net, czy muszę to napisać sama?
Mam metodę, która zwraca IEnumerable<KeyValuePair<string, ArrayList>>, ale niektórzy wywołujący wymagają, aby wynik metody był słownikiem. Jak mogę zamienić IEnumerable<KeyValuePair<string, ArrayList>>na a, Dictionary<string, ArrayList>żeby móc używać TryGetValue? metoda: public IEnumerable<KeyValuePair<string, ArrayList>> GetComponents() { // ... yield return new KeyValuePair<string, ArrayList>(t.Name, controlInformation); } gość: Dictionary<string, ArrayList> actual = target.GetComponents(); actual.ContainsKey("something");
Mam następującą funkcję, aby uzyskać błędy walidacji karty. Moje pytanie dotyczy radzenia sobie z GetErrors. Obie metody mają ten sam typ zwrotu IEnumerable<ErrorInfo>. private static IEnumerable<ErrorInfo> GetErrors(Card card) { var errors = GetMoreErrors(card); foreach (var e in errors) yield return e; // further yield returns for more validation errors } …
Uwielbiam string.IsNullOrEmptymetodę. Chciałbym mieć coś, co zapewniłoby tę samą funkcjonalność dla IEnumerable. Czy jest taki? Może jakaś klasa pomocnika kolekcji? Powodem, o który pytam, jest to, że w ifinstrukcjach kod wygląda na zagracony, jeśli wzór jest (mylist != null && mylist.Any()). Byłoby o wiele czystsze Foo.IsAny(myList). Ten post nie daje …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.