Pytania otagowane jako c#

C # (wymawiane „patrz ostro”) jest językiem programowania wysokiego poziomu, statycznie typowanym, wieloparadygmatowym opracowanym przez firmę Microsoft. Kod C # zwykle jest przeznaczony dla rodziny narzędzi Microsoft .NET i czasów wykonywania, do których należą między innymi .NET Framework, .NET Core i Xamarin. Użyj tego tagu w przypadku pytań dotyczących kodu napisanego w C # lub C # formalnej specyfikacji.


21
Pobieranie nazwy właściwości z wyrażenia lambda
Czy istnieje lepszy sposób na uzyskanie nazwy właściwości po przekazaniu za pomocą wyrażenia lambda? Oto, co aktualnie mam. na przykład. GetSortingInfo<User>(u => u.UserId); Działa poprzez rzutowanie go jako wyrażenia membranowego tylko wtedy, gdy właściwość jest ciągiem znaków. ponieważ nie wszystkie właściwości są łańcuchami, musiałem użyć obiektu, ale wtedy zwróciłby dla …

7
Dlaczego C # zabrania generycznych typów atrybutów?
Powoduje to wyjątek czasu kompilacji: public sealed class ValidatesAttribute<T> : Attribute { } [Validates<string>] public static class StringValidation { } Wiem, że C # nie obsługuje atrybutów ogólnych. Jednak po długim Googlingu nie mogę znaleźć powodu. Czy ktoś wie, dlaczego typy ogólne nie mogą pochodzić Attribute? Jakieś teorie?

20
Dodawanie wartości do tablicy C #
Prawdopodobnie to bardzo proste - zaczynam od C # i muszę dodać wartości do tablicy, na przykład: int[] terms; for(int runs = 0; runs < 400; runs++) { terms[] = runs; } Dla tych, którzy używali PHP, oto co próbuję zrobić w C #: $arr = array(); for ($i = …
510 c#  arrays 

17
Jak mogę zaktualizować bieżący wiersz w aplikacji konsoli Windows C #?
Czy budując aplikację Windows Console w języku C #, można pisać na konsoli bez konieczności przedłużania bieżącej linii lub przejścia do nowej? Na przykład, jeśli chcę pokazać procent reprezentujący, jak blisko procesu jest zakończenie, chciałbym po prostu zaktualizować wartość w tym samym wierszu co kursor i nie musiałem umieszczać każdego …
507 c#  windows  console 

19
Jak znaleźć metodę, która wywołała bieżącą metodę?
Jak zalogować się w języku C #, jak mogę poznać nazwę metody, która wywołała bieżącą metodę? Wiem wszystko System.Reflection.MethodBase.GetCurrentMethod(), ale chcę przejść o krok dalej w śladzie stosu. Zastanawiałem się nad parsowaniem śladu stosu, ale mam nadzieję znaleźć bardziej przejrzysty sposób, coś w rodzaju Assembly.GetCallingAssembly()metod.

7
async / czekaj - kiedy zwrócić zadanie kontra nieważne?
W jakich scenariuszach chcielibyśmy skorzystać public async Task AsyncMethod(int num) zamiast public async void AsyncMethod(int num) Jedyny scenariusz, o którym mogę pomyśleć, to jeśli potrzebujesz zadania, aby móc śledzić jego postępy. Ponadto w poniższej metodzie asynchronizacja i oczekiwanie na słowa kluczowe są niepotrzebne? public static async void AsyncMethod2(int num) { …

7
XDocument lub XmlDocument
Teraz się uczę, XmlDocumentale właśnie natknąłem się na to, XDocumenta kiedy próbuję znaleźć różnicę lub korzyści z nich, nie mogę znaleźć czegoś przydatnego, czy mógłbyś mi powiedzieć, dlaczego używałbyś jednego nad drugim?


16
Zaktualizuj wszystkie obiekty w kolekcji za pomocą LINQ
Czy istnieje sposób na wykonanie poniższych czynności przy użyciu LINQ? foreach (var c in collection) { c.PropertyToSet = value; } Aby to wyjaśnić, chcę iterować po każdym obiekcie w kolekcji, a następnie zaktualizować właściwość na każdym obiekcie. Mój przypadek użycia polega na tym, że mam kilka komentarzy do posta na …
499 c#  .net  linq  foreach 

5
Jak mogę wykryć, czy ten klucz słownika istnieje w języku C #?
Pracuję z interfejsem API Exchange Web Services Managed API z danymi kontaktowymi. Mam następujący kod, który jest funkcjonalny , ale nie idealny: foreach (Contact c in contactList) { string openItemUrl = "https://" + service.Url.Host + "/owa/" + c.WebClientReadFormQueryString; row = table.NewRow(); row["FileAs"] = c.FileAs; row["GivenName"] = c.GivenName; row["Surname"] = c.Surname; …

18
Lista <T> lub IList <T> [zamknięte]
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 7 miesięcy temu . Czy ktoś może mi wyjaśnić, dlaczego chciałbym użyć IList zamiast listy w C …
495 c#  list  generics 


26
Scalanie słowników w C #
Jaki jest najlepszy sposób scalenia 2 lub więcej słowników (Dictionary&lt;T1,T2&gt; ) w C #? (Funkcje 3.0, takie jak LINQ, są w porządku). Myślę o sygnaturze metody w następujący sposób: public static Dictionary&lt;TKey,TValue&gt; Merge&lt;TKey,TValue&gt;(Dictionary&lt;TKey,TValue&gt;[] dictionaries); lub public static Dictionary&lt;TKey,TValue&gt; Merge&lt;TKey,TValue&gt;(IEnumerable&lt;Dictionary&lt;TKey,TValue&gt;&gt; dictionaries); EDYCJA: Mam fajne rozwiązanie od JaredPara i Jona Skeeta, ale …
493 c#  dictionary  merge 

22
Jak korzystać z opcjonalnych parametrów w C #?
Uwaga: To pytanie zostało zadane w czasie, gdy C # nie obsługiwał jeszcze parametrów opcjonalnych (tj. Przed C # 4). Budujemy internetowy interfejs API generowany programowo z klasy C #. Klasa ma metodę, GetFooBar(int a, int b)a API ma metodę GetFooBarprzyjmującą parametry zapytania, takie jak &amp;a=foo &amp;b=bar. Klasy muszą obsługiwać …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.