Witam pod długiej przerwie, dzięki za maile i pytania. Cieszę się, że blog ma aż takie zainteresowanie. Dzisiaj omówię banalnie prostą, ale często bardzo przydatną pod czas pisania zapytań klauzulę DISTINCT. Ma ona na celu wyeliminowanie z wyniku zapytania zdublowanych wierszy. Nie jest ważne czy wiersz składa się z jednego, czy więcej pól. Po prostu usuwa duble. Przykład użycia bez klauzuli DISTINCT: SELECT Nazwisko FROM NowaBaza.dbo.Osoba W wyniku pojawi się dwa razy nazwisko Czajka, Nowak oraz No...
Bazy danych i XML 5011 dni, 4 godziny, 20 minut temu 153 źrodło rozwiń
Testy jednostkowe testują wyłącznie lokalne wykonywanie metod i jest nawet niewskazane aby testowane metody odnosiły się do zewnętrznych, zdalnych zasobów.Rozbudowane systemy są często rozproszone, działające na wielu komputerach oraz składających się z wielu modułów. Podstawowe pytanie brzmi: Jak sprawdzić czy utworzone moduły współpracują ze sobą? Otóż należy przeprowadzić testy integracyjne zgodnie z wybraną metodyką. Testy integracyjne tak jak testy funkcjonalne powinny być przeprowadzane na bieżąco...
W poprzednim wpisie wspomniałem o API Moniotrze, dzięki któremu mogliśmy z bliska podejrzeć zestaw parametrów przekazanych do jednej z funkcji systemowych tworzących nowy proces. Tym razem zrobimy jeszcze jeden krok - pokusimy się o rozszerzenie zbioru API Monitora o funkcje systemu, których jeszcze nie zna. W tym celu wejrzymy w trzewia klasy SecureString, która wdzięcznie pomagała nam przy naszych poprzednich zabawach, tym razem jednak to ją samą weźmiemy na stół doktora Reflectora. Albo nie - użyję do...
autor: Ostatnio firmie dostałem zadanie przygotowania teamu do projektu, który właśnie rozpoczęliśmy. Długo się zastanawiałem jak to zrobić by zarówno osoby zapoznały się z środowiskiem pracy jak i z narzędziami. Jako, że osoby biorące udział w projekcie są bardziej Junior Dev niż Dev a tym bardziej senior wpadłem na pomysł by w ciągu dwóch tygodni napisali mini projekt. Tak naprawdę prosty sam w sobie, i kiedy się wykorzystuje wbudowane narzędzia w VS w ciągu jednego dnia, maks dwóch można go napisać. ...
Mój pierwszy wpis opublikowany przez dotNetoManiak(a) opisuje on wiedzę jaką posiadłem podczas prób komunikacji między aplikacją .Net i stroną napisaną w PHP z wykorzystaniem czystego protokołu http.
Dziś trochę czystej teorii dla tych, którzy potrzebują wywoływać komponenty COM. W Internecie znajduje się wiele artykułów o różnicach między STA a MTA. Większość jednak opisuje je dosyć szczegółowo uwzględniając wiele aspektów technicznych i przez to nie zawsze może być to zrozumiałe. Podstawy jednak są bardzo proste i w poście skupie się wyłącznie na nich – szczegóły z pewnością znajdziecie na MSDN. Przede wszystkim STA, MTA mają znaczenie wyłącznie gdy korzystamy z obiektów COM. To pozostałość po dawn...
Architektura 5014 dni, 3 godziny, 57 minut temu 80 źrodło rozwiń
Zapraszamy na drugi odcinek codingtv(); Dzisiaj założymy projekt, przedstawimy aplikację miniscrum oraz opowiemy, czym jest NuGet.
Pomocna w walce z tego typu sharepointowymi błędami: może być ta strona: http://blogs.msdn.com/b/spses/archive/2009/12/18/sharepoint-2010-logging-improvements-part-1.aspx Dodatkowo jeśli taki błąd występuje w komponencie silverlightowym, to może pomóc wyłączenie Silverlighta w przeglądarce (IE: Tools -> Internet Options -> Programs -> Manage add-ons) i włączenie CustomErrors w web.config.
Aby zamieścić szablon listy (plik .stp) w rozwiązaniu sharepointowym jako część modułu należy: Do projektu sharepointowego dodać nowy element o nazwie Module. Do modułu dodać plik szablonu (Add existing item). Zmienić ścieżkę w "Deployment Location" na pustą (root): Dopisać parę rzeczy w Elements.xml: Dzięki tym wpisom szablon zostanie dodany do biblioteki dokumentów z szablonami list (_catalogs/lt). Elementy "Property" też są ważne, ponieważ bez nich szablon będz...
Kolejny raz o logowaniu... "bo to naprawdę ważne™" :). W świecie .NET mamy dwie liczące się biblioteki oferujące logowanie informacji z aplikacji: log4net oraz nLog. Oczywiście znajdą się też inne rozwiązania: od koszmarnych (The Logging Application Block z EntLiba) po głupie (pisanie własnego loggera i jego produkcyjne wykorzystanie).
Niedawno przedstawiłem TokenContext, klasę pomocniczą upraszczającą wyławianie kontekstu z masy logów tworzonych w aplikacji wielowątkowej, gdzie wiele operacji przeplata się nawzajem. Regularnie jednak zdarza się, że interesuje nas nie tyle jedna szczególna operacje co cały cykl życia konkretnego obiektu. Kumpel, z którym pracuję nad "głównym" projektem, zaproponował stosowanie takiej, bardzo prostej, logicznej i przydatnej, konwencji...
Architektura 5016 dni, 19 godzin, 7 minut temu 85 źrodło rozwiń
Jeden z dev pojechał na wakacje i pozostawił mi aplikacje, którą miałem wgrać na serwer testowy i produkcyjny jednak jak się okazało pozostawił małą kaszankę na której naprawianie nie miałem czasu. Ogólnie nie licząc innych problemów pojawił się problem z odwołaniem do usług WCF i WCF ReST spowodowany przez referencje – hardcodowany w pliku konfiguracyjnym od SL. A to ze nie miałem dużo czasu na myślenie to rozwiązałem to w następujący sposób...
Kolejny artykuł. Tym razem o AppFabric: http://msdn.microsoft.com/pl-pl/library/azure-appfabric–wprowadzenie
Programowanie rozproszone 5017 dni, 6 godzin, 55 minut temu 27 źrodło rozwiń
Hostingiem ASP na Webio.pl jestem bardzo mile zaskoczony. Niedrogi, a niezawodny i funkcjonalny. Problemem jest tylko automatyczne ubijanie nieaktywnej aplikacji po 20 minutach. Staje się to uciążliwe jeśli: start aplikacji długo trwa (pierwszy wizytujący będzie musiał czekać) potrzeb...
W .NET nie tylko klasy mogą być określane, jako partial, ale również metody. Wygląda to tak:partialclass Account { privatedecimal _balance; publicstring Balance { get { return _balance; } set { OnBalanceChanging(value); _balance = value; OnBalanceChanged(); } } partialvoid OnBalanceChanging(decimal balance); partialvoid OnBalanceChanged(); } I klasa ...
Jednym z wyzwań przed jakimi stoją programiści w trakcie pracy nad aplikacją jest sposób przechowywania w pamięci ‘wrażliwych danych’, czyli wszelkiego rodzaju haseł, connection stringów, etc., a zatem informacji, którymi ludzie niechętnie dzielą się ze wszystkimi wokół. Generalnie chodzi bowiem o to, żeby jakiś dobry człowiek podczas przeglądania pamięci procesu nie miał na widelcu wszystkich tych danych, a jedynie sieczkę z której wyciągnięcie czegokolwiek sensownego graniczy z cudem. I właśnie specjal...
Ostatnio natknąłem się na ciekawą opcję podczas oglądania wideo w Media Player Clasic. Otóż po najechaniu na MPC na pasku zadań w okienku podglądu zobaczyłem przyciski odtwarzacza. Bardzo spodobała mi się taka opcja i chciałem zobaczyć czy zaimplementowanie takiego dodatku we własnym programie będzie trudne. Otóż okazało się, że… nie. Poniżej opis stworzenia prostej aplikacji korzystającej z tego dodatku.
Proces tworzenia prostej gry. Jeżeli jesteś początkującym programistą i chcesz napisać pseudoużyteczny program z wykożystaniem Visual Studio i Windows Forms – ten wpis jest właśnie dla Ciebie. Jeżeli jesteś bardziej doświadczonym programistą, chcesz się trochę pośmiać / przeczytać dzienną normę kiepskiego kodu / powytykać kilka błędów i z wielką satysfakcją wyszydzić autora, bądź też pomóc zrozumieć autorowi jego błędy (niepotrzebne skreślić) – też możesz przeczytać ;-)
Okazuje się, że bardzo prosto, ale zacznijmy od początku. Niedawno zakończyłem pracę nad serwerem zajmującym się wykonywaniem tzw. zadań wsadowych. Definicje zadań do wykonania pobierane są z bazy danych, a w danym momencie może działać wiele serwerów. Każdy serwer rezerwuje sobie swoje zadania na pewien kwant czasu. Po upływie tego czasu inne serwery mają prawo przejąć to zadanie. Może się tak zdarzyć na przykład jeśli jakiś serwer ulegnie awarii. Jeśli wykonanie danego zadania zajmuje w...
Programowanie rozproszone 5019 dni, 7 godzin, 37 minut temu 131 źrodło rozwiń
Autor: Jak przez mgłę widzę czyjąś twarz. Rusza ustami, chce mi coś przekazać. Początkowo dociera do mnie tylko głuchy bulgot, jakbyśmy byli pod wodą. Powoli jednak skrawki wypowiadanych słów w jakiś sposób trafiają do moich uszu. Im więcej rozumiem, tym głębszy mają sens. Chcę słuchać, jeszcze i jeszcze. Przeżywam moment olśnienia. Skąd on wie co mówić? Skąd zna odpowiedzi na wszystkie dręczące mnie pytania? Kto to jest? Zresztą, nieważne. Niech mówi, niech mówi... Niech nie przestaje... Wzrok zdaje mi...