dotnetomaniak.pl - Artykuły z tagiem C#

Zadanie jest następujące: Na podstawie poniższego schematu (baza AdventureWorksLT) wyznaczyć wartość zamówienia. Dodać kolumny z id klienta i zamówienia (bez uwzględnienia podatku, obniżek itp). W zapytaniu wykorzystamy GroupJoin. Zapytanie to zapiszemy w dwóch postaciach LINQ2SQ: metodowej oraz SQLo podobnej...

Dziel się z innymi:
Programowanie w .NET: LINQ - użycie GroupJoin

Inne 2815 dni, 10 godzin, 17 minut temu psz750 180 źrodło rozwiń

Szyfrowanie symetryczne Szyfrowanie symetryczne opiera się na jednym kluczu użytym zarówno do szyfrowania jak i deszyfrowania danych. Obecnie zalecane jest używanie algorytmu Rijndael...

Dziel się z innymi:
Programowanie w .NET: 70-516 Szyfrowanie danych

Inne 2817 dni, 16 godzin, 9 minut temu psz750 184 źrodło rozwiń

Co należy w pierwszej kolejności zrobić z kodem opublikowanym w pierwszej części? Skoro ma on ulegać zmianom, dobrze by było, aby nie odbywały się one w dotychczasowym pliku przechowującym kod, ale w pliku dedykowanym tylko tym zmianom. Należy zatem przenieść kod, który będzie modyfikowany do innego pliku. Myli się jednak ten, kto myśli, że wykorzystana zostanie do tego...

Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 2.

Sztuka programowania 2823 dni, 15 godzin, 44 minuty temu PaSkol 106 źrodło rozwiń

Dawno, dawno temu, kiedy graficzne środowisko Windows zaczęło pretendować do miana systemu, powstały także środowiska dla programistów realizujące ideę RAD, czyli Rapid Application Developmnent, co w tłumaczeniu na polski oznaczało szybkie tworzenie aplikacji. W Windows – początkowo – istniały dwa takie środowiska: Visual Basic i Delphi. Po jakimś czasie pojawiły się kolejne. Ale nie to było istotne, a fakt, że nieświadomie narodził się także nowy styl programowania...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Nadeszła pora na cykl publikacji: „Historia pewnej refaktoryzacji”. Część 1.

Sztuka programowania 2823 dni, 15 godzin, 44 minuty temu PaSkol 98 źrodło rozwiń

Niedawno tworząc szablon kontrolki w WPF natknąłem się na pewien problem. Chcąc odwołać się z szablonu do właściwości kontrolki standardowo użyłem rozszerzenia TemplateBinding. Kod się skompilował ale po uruchomieniu aplikacji pojawił się wyjątek. Oto uproszczona postać szablonu...

WPF – TemplateBinding i TemplatedParent a wyzwalacze w szablonie kontrolki « Developer notes

Windows 2828 dni, 14 godzin, 32 minuty temu psz750 87 źrodło rozwiń

Programiści niskopoziomowi często narzekają na brak pewnych możliwości w C# znanych im z C++ (często ze względu na brak znajomości ich odpowiedników w C#. Po dzisiejszej rozmowie z kolegą na ten temat stwierdziłem, że pokażę jak wykorzystać takie funkcje jak memset, a przy okazji jak pisać biblioteki DLL w C++ dla C# i jak z nich korzystać. Sprawdzimy także, czy zastosowanie takich bibliotek przyśpieszy działanie...

Dziel się z innymi:
Budowanie (w C++) i dynamiczne linkowanie bibliotek DLL w C#

Sztuka programowania 2832 dni, 10 godzin, 17 minut temu bari 311 źrodło rozwiń

Co wyświetli poniższy fragment kodu?internalclass Program { publicstaticvoid Main() { var timer =new Timer(TimerCallback, null, 0, 1000); Console.ReadLine(); } privatestaticvoid TimerCallback(Object o) { Console.WriteLine("Callback: "+ DateTime.Now); } } Powyższy konstruktor uruchamia timer i spodziewalibyśmy się, że na ekranie po prostu będą wyświetlane kolejne callbacki. W praktyce jednak dokonywana jest pewna optymalizacja, która ma fatalne efekty. Można zauwa...

Tagi: .Net, C#
Dziel się z innymi:
Piotr Zieliński » Code Review: Garbage Collector a zmienne lokalne w metodach

Sztuka programowania 2833 dni, 3 godziny, 20 minut temu pzielinski 101 źrodło rozwiń

autor: Ponownie wrócę do tematyki kompilowania C# w locie. Pisałem wcześniej, że potrzebowałem takiej funkcji aby użytkownicy mojej aplikacji mogli w dowolnym momencie zdefiniować własny algorytm obliczania odległości między dwoma wektorami. Po kilku próbach już wiedziałem jak to zrobić, a chwilę później miałem już zaimplementowaną pierwszą wersję rozwiązania. Przyszła pora wypróbowania nowej zabawki na prawdziwych danych. Uruchomiłem więc aplikację, napisałem krótki skrypt i wystartowałem ...

Dziel się z innymi:
Michał Komorowski: Mono C# compiler as a service 3

Narzędzia 2834 dni, 8 godzin, 56 minut temu macko 38 źrodło rozwiń

ReadOnlyCollection jest wraperem na kolekcję zabezpieczającym ją przed modyfikacjami. Nie tworzy on ponownie elementów a jedynie przechowuje oryginalną kolekcję, dzięki czemu wszelkie wykonywane bezpośrednio na niej operacje są w nim odzwierciedlane. Zasada działania ReadOnlyCollection jest bardzo prosta: jeżeli wywołana zostanie na nim metoda modyfikująca kolekcję pojawi się wyjątek, w przeciwnym wypadku ta sama metoda zostanie wywołana na oryginalnej kolekcji.

Dziel się z innymi:
Udostępnianie kolekcji tylko do odczytu « Developer notes

Inne 2836 dni, 4 godziny, 25 minut temu psz750 110 źrodło rozwiń

W poprzednim poście pokazałem jak korzystać z funkcji FromAsyncPattern na przykładzie usługi sieciowej. Dzisiaj zaprezentuję kilka dodatkowych funkcji. Najpierw zdefiniujmy co chcemy uzyskać:Użytkownik może wpisać szukaną frazę w pole edycyjne. Usługa sieciowa ma za zadanie wyszukanie fraz wpisanych w pole zdefiniowane w punkcie 1. Wyłącznie frazy dłuższe niż 3 znaki mają być przetwarzane. Jeśli użytkownik wpisze dwa razy tą samą frazę to tylko pierwsza ma zostać wysłana do usługi (optymalizacja). Zdarze...

Tagi: .Net, C#, Re
Dziel się z innymi:
Piotr Zieliński » Reactive Extensions– Observable.FromAsyncPattern, dalsza część przykładu

Sztuka programowania 2838 dni, 21 godzin, 33 minuty temu pzielinski 16 źrodło rozwiń

autor: Dzisiaj wrócę do tematu użycia języka C# jako języka skryptowego przy pomocy Mono.CSharp.dll i opiszę w jaki sposób przekazać parametry do takiego skryptu. Pominę podejście opierające się o wklejanie do skryptu string'owej reprezentacji takich parametrów i od razu przejdę do bardziej eleganckiego rozwiązania. Bazuje ono na tym co przeczytałem w tym poście. Zaczynamy od utworzenia statycznej klasy ScriptContext, która posłuży nam do wymiany danych pomiędzy skryptem, a naszym programem...

Dziel się z innymi:
Michał Komorowski: Mono C# compiler as a service 2

Narzędzia 2839 dni, 22 godziny, 6 minut temu macko 42 źrodło rozwiń

autor: Od jakiegoś czasu pracuję nad aplikacją do generowania i analizowania wykresów rekurencyjnych. Temat sam w sobie jest bardzo ciekawy, więc może do niego wrócę w przyszłości, ale dzisiejszy post będzie o czymś innym. Moja aplikacja między innymi wykonuje obliczenia na wektorach np.: oblicza różne odległości (euklidesową, Manhattan czy normę maksimum) między nimi. Dodawanie kolejnych algorytmów wymagało jednak każdorazowej rekompilacji aplikacji. Zacząłem więc szukać sposobu aby umożl...

Dziel się z innymi:
Michał Komorowski: Mono c# compiler as a service

Narzędzia 2841 dni, 13 godzin, 42 minuty temu macko 99 źrodło rozwiń

W ostatnim poście pisałem o konwersji zdarzeń .NET do RX. Dziś chciałbym zaprezentować przydatną funkcję, dostępną w rozszerzeniach Observable – Buffer. Służy ona do podzielenia danych w bufory. Załóżmy, że mamy źródło, które generuje dane co 1 sekundę. W każdej sekundzie zatem otrzymujemy jedno powiadomione OnNext. Co w przypadku jednak gdybyśmy chcieli dostawać w każdym powiadomieniu kilka wartości (tablicę elementów) ? Na przykład zamiast 10 OnNext, chcemy dwa powiadomienia, w którym każde zawiera lis...

Tagi: C#, Rx
Dziel się z innymi:
Piotr Zieliński » Reactive Extensions: Observable.Buffer

Sztuka programowania 2843 dni, 9 godzin, 8 minut temu pzielinski 38 źrodło rozwiń

Tym razem krótko, o czymś co może się przydać nie tylko na egzaminie, ale także w codziennej pracy z zasobami i bindowaniem do nich. Rozważmy cztery przypadki bindowania do zasobów w kodzie.

Tagi: .Net, C#, resources, WPF
Dziel się z innymi:
Programowanie w .NET: Bindowanie do zasobów Dynamic vs Static

Windows 2843 dni, 16 godzin, 2 minuty temu psz750 131 źrodło rozwiń

Drag & Drop - przeciągnij i upuść pozwala na wykonywanie określonych operacji w graficznym interfejsie za pomocą myszki. Proces ten, oparty jest na zdarzeniach.

Tagi: .Net, C#, drag&drop
Dziel się z innymi:
Programowanie w .NET: 70-511 Rozdział 10 - Drag & Drop

Windows 2846 dni, 8 godzin, 51 minut temu psz750 130 źrodło rozwiń

Jeśli to czytacie, to znaczy że zdążyłem jeszcze z wpisem przed nowym rokiem.  Udało mi się napisać jeszcze jednego posta przed nowym rokiem - jestem królem świata! Dzisiaj o wykorzystaniu app.config dla własnych celów. Skąd taki pomysł? Otóż jak każdy pewnie ma lub miał w życiu, czasem mieć taką potrzebę aby zmieniać zachowanie aplikacji inaczej niż przez jej przekompilowanie. Wtedy właśnie z pomocą przychodzą pliki .txt, .xml, .config czy dawno dawno temu .ini. Można napisać własne system do obsług...

Tagi: C#, konfiguracja
Dziel się z innymi:
jstadnicki: Własna konfiguracja w app.config

Windows 2851 dni, 7 godzin, 54 minuty temu http://jstadnicki.blogspot.... 144 źrodło rozwiń

Programowanie asynchroniczne ma na celu polepszenie interakcji aplikacji z użytkownikiem. Przenosząc długotrwałe operacje na inny wątek, zapewniamy, że interfejs naszej aplikacji nie zostanie zamrożony.

Dziel się z innymi:
Programowanie w .NET: 70-511 Rozdział 9 - programowanie asynchroniczne

Inne 2853 dni, 5 godzin, 11 minut temu psz750 158 źrodło rozwiń

Poprzez mechanizm wiązania danych WPF pozwala w łatwy sposób prezentować zawartość kolekcji obiektów. Jeżeli jednak oprócz samego wyświetlania elementów zależy nam na ich sortowaniu, grupowaniu, filtrowaniu czy nawigacji po nich, standardowe możliwości kolekcji okażą się niewystarczające. W takiej sytuacji idealnym rozwiązaniem będzie użycie widoku kolekcji.

Dziel się z innymi:
Kolekcje w WPF – sortowanie, grupowanie, filtrowanie oraz nawigacja « Developer notes

Windows 2854 dni, 2 godziny, 4 minuty temu psz750 182 źrodło rozwiń

Kiedyś już chciałem poprowadzić cykl wpisów o Reactive Extensions i nawet napisałem pierwszy post wprowadzający do interfejsów IObservable, IObserver. Niestety po drodze przytrafiły się tematy które chciałem najpierw opisać i na końcu zrezygnowałem z tego. W między czasie kilka osób pytało o ten cykl ale nie widziałem sensu ponieważ Maciej Zbrzezny już wykonał kawał dobrej roboty i  opisał to na swoim blogu w bardzo szczegółowy sposób. Dzisiaj postanowiłem jednak napisać kilka postów o RX po swojemu, z t...

Dziel się z innymi:
Piotr Zieliński » Reactive Extensions–wprowadzenie

Sztuka programowania 2854 dni, 12 godzin, 46 minut temu pzielinski 111 źrodło rozwiń

W zeszłym tygodniu pisałem o zastosowaniu dynamicznych zmiennych. W dzisiejszym wpisie zastanowimy się co dokładnie CLR robi z dynamic i jak to wpływa na wydajność aplikacji. Pierwszy test polega na porównaniu wydajności dodawania dwóch liczb:privatestaticvoid TestStatic() { var stopwatch = Stopwatch.StartNew(); int a =10; int b =45; int c = a + b; stopwatch.Stop(); Console.WriteLine("Static:{0}", stopwatch.ElapsedTicks); } privatestaticvoid TestDynamic() { var stopwatch = Stopwatch...

Dziel się z innymi:
Piotr Zieliński » Słowo kluczowe dynamic: wydajność

Sztuka programowania 2857 dni, 20 godzin, 45 minut temu pzielinski 97 źrodło rozwiń

1 2... 39 40 41 42 43 44... 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,6)
8
(9 775,28)
9
(8 478,28)
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 206,43)