dotnetomaniak.pl - Artykuły z tagiem C#

Bez zbędnego przeciągania i całego bałaganu związanego z założeniem nowego bloga i przywitania z czytelnikami, przechodzę do rzeczy. W obecnie pisanej przeze mnie aplikacji WPFowej zaistniała konieczność dodania testów dla użytkowników (nie mam na myśli unit testów, a testów sprawdzających jednokrotnego wyboru). Rozwiązaniem, jakie pierwsze przyszło mi do głowy, jest przechowywanie d...

Tagi: .Net, C#, JSON, Json.NET, WPF
Dziel się z innymi:
Praca z plikami w formacie JSON na platformie .NET | Waleczny Trzmiel

Narzędzia 2477 dni, 12 godzin, 29 minut temu waleczny_trzmiel 281 źrodło rozwiń

Rozważmy przez chwilę scenariusz wysyłania wiadomości e-mail. A raczej tą część procesu, w której generowana jest treść. W tagu demo3-finish mamy taki interfejs: public interface IEmailService { void RegistrationEmail(string email, string link); } (https://github.com/maniserowicz/di-talk/blob/demo3-finish/src/app/EmailService.cs) Jego implementacja powinna zająć...

Dziel się z innymi:
DI: gdy robi się skomplikowanie… | Maciej Aniserowicz o programowaniu

Sztuka programowania 2482 dni, 17 godzin, 13 minut temu psz750 262 źrodło rozwiń

OK – mamy niektóre “odpowiedzialności” wyjęte do osobnych klas. Ale co dalej? Czy UsersController powinien sam, ot, tak sobie, tworzyć nowe instancje których aktualnie potrzebuje? Nie! Pójdę o krok dalej i powiem więcej: użycie słowa kluczowego “new” w kodzie aplikacji uznaję za anti-pattern. Howgh, rzekłem. Jeżeli klasa potrzebuje innej klasy do działania, to ta zależność powinna być jawnie wyeksponowana w kodzie. Najlepiej przez param...

Dziel się z innymi:
DI: IoC & explicit dependencies & interfaces | Maciej Aniserowicz o programowaniu

Sztuka programowania 2489 dni, 13 godzin, 50 minut temu psz750 209 źrodło rozwiń

O finalizers czy też destruktorach pisałem już wielokrotnie. Wspomniałem również, że lepiej ich unikać, jeśli oczywiście to możliwe. Głównym problem jest możliwość wypromowania obiektu do kolejnych generacji, ponieważ obiekty z destruktorami są umieszczane w kolejce freachable, gdzie na nową stają się osiągalne. Jeśli ktoś nie pamięta, to polecam najpierw poczytanie o tym (w dziale articles są linki do moich tekstów o GC). Dzisiaj jednak chciałbym wspomnieć o czymś innym. Wiemy, że jeden wątek zwykle m...

Tagi: C#, destruktor
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » C#–zablokowane destruktory

Sztuka programowania 2489 dni, 13 godzin, 50 minut temu rroszczyk 156 źrodło rozwiń

W tym odcinku skupiam się na stanie aplikacji przed jakimikolwiek procesami “upiększającymi”. Aplikacja, którą mamy upiększyć, została do celów demonstracyjnych zbudowana dość nietypowo. Nie jest to web app, nie jest to nawet console app. Jest to jedna z...

Dziel się z innymi:
DI: punkt wyjścia | Maciej Aniserowicz o programowaniu

Sztuka programowania 2503 dni, 23 godziny, 3 minuty temu psz750 228 źrodło rozwiń

Od pewnego czasu mam okazję budować system, którego część funkcjonalności dotyczy automatyzacji czynności administracyjnych związanych z zarządzaniem użytkownikami Active Directory. Jedną z takich czynności jest przełączanie skrzynek pocztowych Exchange 2007/2010 pomiędzy dwoma kontami użytkowników. W dzisiejszym wpisie pokażę, w jaki sposób zrealizować to zadanie wykorzystując Exchange Management Shell (EMS).

Przełączanie skrzynek Exchange pomiędzy kontami Active Directory z wykorzystaniem Exchange Management Shell | Developer notes

Inne 2511 dni, 11 godzin, 16 minut temu psz750 56 źrodło rozwiń

Dzisiaj przyjrzymy się słowu kluczowemu var w C#. Słowo dodane wraz z premierą framework’a .NET 3.5 stało się jednym z najbardziej nadużywanych przez programistów.

Dziel się z innymi:
DOs & DONTs – część druga | maciejjędrzejewski

Sztuka programowania 2518 dni, 9 godzin, 24 minuty temu jedmac 302 źrodło rozwiń

Usually when we need to retrieve data from database server, we write code which looks like that using (var session = DataAccesLayer.Instance.OpenSession()) { using (var transaction = session.BeginTransaction()) { var projects = session.QueryOver

Tagi: C#, nHibarnate
Dziel się z innymi:
[EN] NHhibernate - multiple queries in one roundtrip to server

Windows 2521 dni, 16 godzin, 53 minuty temu nocturn 118 źrodło rozwiń

Bohaterem dzisiejszego odcinka jest prosta, jednak bardzo użyteczna, i jak się okazuje chyba mało znana metoda jednej z klas dostępnych w .NET Framework już od wersji 1.1.

Dziel się z innymi:
Panie i Panowie oto …

Sztuka programowania 2539 dni, 15 minut temu trzyPe 533 źrodło rozwiń

Dzisiaj całkowicie o podstawach ale jednak warto przypomnieć sobie słownictwo. Każdy kojarzy chyba wzorzec factory. Oficjalnie wyróżnia się jednak kilka typów tego wzorca. Najpopularniejsze z nich to Factory method oraz Abstract Factory. W podręczniku do wzorców projektowych, znajdziemy je jako dwie osobne konstrukcje. Czy to naprawdę tak ważne, aby znać różnice w nazewnictwie? Wzorce projektowe traktuję jako słownictwo. Zamiast wyjaśniać drugiej osobie, dokładnie co chcę napisać, używam wzorców projek...

Dziel się z innymi:
Piotr Zieliński » Factory Method a Abstract Factory

Sztuka programowania 2545 dni, 14 godzin, 58 minut temu psz750 242 źrodło rozwiń

W jednym z tworzonych przeze mnie systemów pojawiła się konieczność dodania funkcjonalności pozwalającej na odblokowywanie kont użytkowników w Active Directory (zablokowanych na skutek kilkukrotnego podania błędnego hasła). Standardowa procedura odblokowania konta to wejście do konsoli Active Directory i zaznaczenie odpowiedniej opcji w ustawieniach danego użytkownika...

Odblokowanie konta w Active Directory | Developer notes

Inne 2545 dni, 14 godzin, 58 minut temu psz750 145 źrodło rozwiń

Powiedzmy, że potrzebujemy wyciągnąć PostCode użytkownika (a po drodze mamy jeszcze Address): string postCode = person.Address.PostCode.ToString(); Nie mamy pewności czy person nie jest nullem, a następnie czy person.Address nie jest nullem, a następnie person.Address.PostCode … . Aby się zabezpieczyć przed NullReferenceException musimy napisać trochę dodatkowego kodu, jak np: ...

Tagi: C#, Null
Dziel się z innymi:
Wielokrotne zabezpieczanie się przed nullem | Show me the code

Inne 2560 dni, 9 godzin, 29 minut temu psz750 601 źrodło rozwiń

Od jakiegoś czasu nosiłem się z zamiarem rozpoczęcia na tym blogu jakiegoś cyklu wpisów – od czasu kiedy popełniłem serię wpisów przygotowujących do egzaminu MCSD: 70-480 minęło już trochę czasu… Zastanawiałem się trochę nad tematem i ostatecznie postanowiłem, że będzie to implementacja różnych wzorców projektowych w C#. Wiem, wiem… Temat wzorców jest dość podstawowy, jednak moim zdaniem fajnie będzie zebrać je wszystkie w jednym miejscu, a przy okazji uporządkować sobie trochę wiedzę na ich temat. Posta...

Dziel się z innymi:
burczu programator - blog | Wzorzec Strategia – implementacja w C#

Sztuka programowania 2560 dni, 9 godzin, 29 minut temu burczu 434 źrodło rozwiń

There are a lot of discussions in the Internet about the sense of testing the code with private accessors. In my opinion all of the discussions coming from the wrong understanding of the topic. What is unit testing? It is a testing of units, not classes, not methods exposed by some API. The term private is supposed to be private to the consumer, not to unit tests. Let's have a look at it closer..

Źródło: blog.kateo.pl
Dziel się z innymi:
[EN] Unit testing private methods with PrivateObject and PrivateType | blog.kateo.pl

Sztuka programowania 2561 dni, 10 godzin, 36 minut temu blog-kateo-pl 116 źrodło rozwiń

In my pervious post I described basic multithreading constructs in C#. Now, I would like to compare them to conforming constructs in Java. It might be useful for those of you, who has already created some multithreaded applications in Java, and would like to learn how to do the same in C#.

Źródło: jj09.net
Dziel się z innymi:
[EN] Multithreading: C# vs. Java - Jakub Jedryszek

Sztuka programowania 2563 dni, 1 godzinę, 15 minut temu jj09 203 źrodło rozwiń

Extension Methods – metody rozszerzające, które pozwalają na wykorzystanie raz napisanego kodu w wielu miejscach bez naginania zasady DRY (Don’t Repeat Yourself). Metoda taka musi być statyczna...

Dziel się z innymi:
Extension Methods | maciejjędrzejewski

Sztuka programowania 2567 dni, 18 godzin, 40 minut temu jedmac 235 źrodło rozwiń

Najprościej definiując problem: Czy mamy tylko jeden return z metody, czy też mamy ich kilka w różnych miejscach. Mówię też o metodach, które nie zwracają wartości. Metodę void też można skończyć wcześniej...

Single Exit Point | Show me the code

Sztuka programowania 2567 dni, 18 godzin, 40 minut temu psz750 228 źrodło rozwiń

Najczęściej programiści korzystają z klasy Dictionary ale warto rozważyć dwie inne kolekcje. ListDictionary przechowuje dane na liście jednokierunkowej. Dla słowników z kilkoma kluczami zwykle jest to szybsze niż standardowy hash table, wykorzystywany w Dictionary. Szybciej jest po prostu przejść przez 10 elementów, niż liczyć skomplikowaną funkcję haszującą.

Piotr Zieliński » HybridDictionary oraz ListDictionary

Inne 2571 dni, 12 godzin, 47 minut temu psz750 194 źrodło rozwiń

Dzisiejszy wpis o książkach, z których miałem okazję korzystać w ciągu ostatnich 12 miesięcy. Niektóre pozycje są warte polecenia, inne mniej, a niektóre w ogóle. Z książkami jest jeden podstawowy problem – bardzo szybko się starzeją...

Dziel się z innymi:
Literatura .NET – co warto wybrać? | maciejjędrzejewski

Inne 2567 dni, 18 godzin, 40 minut temu jedmac 484 źrodło rozwiń

Czytając jeden z ostatnich postów u Maćka zauważyłem, że w komentarzach pojawiła się krótka wymiana opinii na temat wyboru “właściwego” podejścia w kontekście korzystania z Entity Framework. Sam miałem okazję używać każdego z podejść oferowanych przez EF i z biegiem czasu zacząłem dostrzegać plusy i minusy poszczególnych podejść. W tym poście postanowiłem zebrać moje przemyślenia na ten temat.

Dziel się z innymi:
EF w podejściu Database First vs Code First - co wybrać - Tymoteusz Kęstowicz .NET developer blog

Narzędzia 2567 dni, 18 godzin, 40 minut temu tkestowicz 405 źrodło rozwiń

1 2... 35 36 37 38 39 40... 70 71

Najaktywniejsi

1
(32 895,6)
2
(32 816,53)
3
(27 178,29)
4
(21 178,88)
5
(20 336,33)
6
(13 018,14)
7
(10 531,65)
8
(9 775,28)
9
(8 801,31)
10
(6 837,96)
11
(6 214,22)
12
(5 393,84)
13
(4 157,41)
14
(4 026,73)
15
(3 908,07)
16
(3 599,64)
17
(3 448,35)
18
(3 318,39)
19
(3 224,66)
20
(3 221,45)