.NET framework zawiera klasy do wykonywania podstawowych zadań związanych z zarządzaniem plikami, folderami, wyszukiwaniem dysków itd. W tej lekcji opiszę najprzydatniejsze klasy związane z działaniem na systemie plików. Aby wyświetlić listę wszystkich dysków (partycje, Cd-romy, dvd itp.), podłączonych do komputera, należy użyć metody DriveInfo.GetDrivers()(należy użyć przestrzeni System.IO). Przykładowo, poniższy kod wyświetli listę, o której wspominałem wyżej: 1:foreach(DriveInfo di in DriveInfo.Ge...
Wiele tutoriali pisanych o technologii LINQ to SQL dotyczyło implementacji w wersji beta1 i beta2 (czyli tak naprawdę Visual Studio codename Orcas przed wersją RTM). W pierwotnej formie do dodawania i usuwania danych z bazy były metody Add() i Remove(). Jednak po wydaniu drugiej wersji beta pojawiły się głosy, że jest to mylące i w podejściu bazodanowym powinno nazywać się to inaczej - odpowiednio I...
Tym razem napiszę o problemie, na jaki natknąłem się korzystając z LINQ, otóż załóżmy, że mamy kolekcję zawierającą jako elementy obiekty typu np. Item. Teraz wykonuję jakąś kwerendzie LINQ i jako rezultat zwracam kolekcję niektórych właściwości klasy Item. Następnie otrzymaną listę bindujemy, do powiedzmy, kontrolki ComboBox. Wykonujemy jakieś operacje etc. a następnie chcemy pobrać zaznaczony obiekt poprzez ComboBox.SelectedItem. I tu pojawia się problem na jaki typ rzutować? Dla zobrazowania przykład...
Jestem świeżo po sesji z debuggerem. Ostatnio aktualizowałem bazę danych SQL CE z wersji 3.1 do 3.5, w wyniku czego pojawiły się dziwne problemy z wstawianiem danych. Otóż raz na jakiś czas dane binarne dodawane do bazy były uszkodzone. Gdzie tkwił problem? Ano w oszczędności znaków (czytaj: lenistwie). Przykładowo definiując parametr dla obiektu SqlCeCommand, w sposób:cmd.Parameters.Add(new SqlCeParameter(“FileData”, question.FileData)); Nie określamy w sposób jawny jego typu. Silnik SQL CE musi niejako...
Bazy danych i XML 5454 dni, 9 godzin, 36 minut temu 41 źrodło rozwiń
System Windows udostępnia nam mechanizm komunikacji między procesowej który wykorzystuje tzw. named events. Dzięki niemu możemy sygnalizować jak i monitorować, dowolnie utworzone przez nas zdarzenia np. pomiędzy dwoma różnymi programami, lub bądź chyba częściej spotykany, pomiędzy różnymi wątkami pracującymi w ramach jednej aplikacji. Ograniczeniem tego mechanizmu jest brak możliwości przekazywania danych, służy on jedynie do sygnalizacji.Implementacja w .NET Implementacją tego mechanizmu na platformie ....
Zauważyłem iż w końcu prowadzone są prace nad programowaniem równoległym dla platformy .NET, wcześniej dostępne tylko w rozważaniach akademickich (czytałem kiedyś bodajże o jakiś rosyjskim projekcie). Paradygmat dobrze już znany programistom C++ (np. implementacja OpenMP).
Jak ustawić dowolną wysokość wierszy w kontrolce ListView (WinForm, .NET 2.0) ? Najprostsze rozwiązanie – poprzez SmallImageList. Tworzymy obiekt ImageList, ustawiamy wymiary na 1×50 (aby uzyskać wiersze o wysokości 50px) i przypisujemy jako SmallImageList naszego obiektu ListView. Do obiektu ImageList nie musimy dodawać żadnego obrazka – wystarczą wymiary :)
Ostatnio wspomniałem o walidowaniu pól w formularzach, teraz pora przejść do jeszcze fajniejszej funkcjonalności :) a mianowicie wykonywaniu analizy określonej X rzeczy w SharePoint 2010. Dlaczego X? dlatego, że jest to ograniczone tylko do waszej kreatywności :)
Już nie pierwszy raz dodawałem web referencję do projektu. Zawsze mnie zastanawiało dlaczego w solucji nie widać “zawartości” dodanej referencji do usługi. Mówiąc “zawartość” mam na myśli plik z wygenerowaną klasą czy plik zawierający ścieżkę do WDSL’a. W sumie to sensowne posunięcie, bo po co programista ma grzebać we wnętrzu pliku (Reference.cs), skoro jest on wygenerowany wygenerowany “>wygenerowany “>automatycznie i powiązany z usługą. W przypadku zmian po stroni...
Warstwowa struktura aplikacji stanowi logiczną dekompozycję systemu. Podział na warstwy (layers, tiers) umożliwia przedstawienie różnych aspektów aplikacji. Pozwala zrozumieć złożone systemy i daje przejrzystość aplikacji. Jednym z najbardziej znanych modeli warstwowych jest 7-warstwowy model ISO, obrazujący budowę protokołów sieciowych...
Jak napisałem wcześniej (IBM Rational Software Modeler i platforma .NET) do tego aby w IBM Rational Software Modeler, które jest narzędziem do wizualnego modelowania i projektowania w języku UMLMożna było dokonywać transformacji kodu z modelu UML do C# i z kodu C# do UML potrzebna jest dodatek IBM Rational Modeling Extension for Microsoft .NET...
Dzisiaj muszę trochę ponarzekać na Visual Studio 2008 ;) Chłopaki zrobili kawał dobrej roboty tyle, że nie ma rzeczy idealnych, tak jest i w tym przypadku. Aplikacja mobilna, nad którą aktualnie pracuję konsumuje pokaźną ilość web service’ów i jak to w życiu bywa, z biegiem czasu i rozwojem funkcjonalności ulegają one zmianie..
Większość obecnych urządzeń mobilnych z Windows Mobile na pokładzie (i nie tylko), posiada wbudowany telefon. A to otwiera ciekawe możliwości przed naszymi aplikacjami. Wszystko było by pięknie gdyby nie konieczność pracy z Telephony Application Programming Interface (w skrócie TAPI) biblioteką która umożliwia dostęp do tych wszystkich potencjalnie przydanych możliwości...
Microsoft ma swoje ‘best practices’ i ja mam swoje ;) Generalnie to co przedstawię poniżej to taki własny, nieuporządkowany, ‘core dump’ różnych informacji, wygrzebanych gdzieś po zakamarkach różnych dokumentacji i poradników. Wskazówki, głównie, dotyczą problemów z pamięcią i szybkością działania aplikacji pracujących pod kontrolą .NET Compact Frameworka i systemów Windows Mobile.
Singleton jest jednym ze wzorców projektowych. Jego zadaniem jest zapewnienie istnienia tylko jednej instancji danej klasy i umożliwienie globalnego dostępu do niej. W C# przykładowo może wyglądać to tak...
Jak dla mnie R# jest genialnym narzędziem i nie bardzo wyobrażam sobie pracę bez niego :). Na szczęście nie muszę. Ale do rzeczy. Jeden z moich kolegów zaobserwował pewien problem z uruchamianiem testów NUnit poprez R#. Po poszukiwaniach dotarł do takiej dyskusji na forum...
Powiedziałem “a” trzeba powiedzieć “b” i po BlipNet popełniłem bibliotekę dostępową do API Flakera. Projekt można znaleźć na CodePlex FlakerNET...
ESRI to lider światowego rynku systemów informacji geograficznej (ang. GIS). Lider przez duże L - Na całym świecie z rozwiązań ESRI korzysta 300 tyś instytucji w tym 2/3 firm z listy Fortune. ESRI to taki Microsoft w świecie GIS'ów :)..
Przeglądając wpisy na rożnych blogach oraz biorąc udział w dyskusjach na portalach, częstokroć napotykałem na dyskusje jak prawidłowo zaimplementować wzorzec singletona. Jeden z częstszych podawanych przykładów prezentuje poniżej.public sealed class Singleton { static Singleton instance=null; static readonly object padlock = new object(); Singleton() { } public static Singleton Instance { get { if (instance==null) { lock ...
Programowanie rozproszone środa, 28 października 2009 21:41:45 GMT 81 spam? źrodło rozwiń
Wyrażenia regularne pozwalają także na podmianę tekstu na podstawie podanych wzorców. Klasa Regex posiada metodę Replace umożliwiającą podmianę tekstu. Najprostszy sposób to wywołanie metody, której argumentami są: ciąg wejściowy, wzorzec oraz ciąg, który zostanie użyty do podmiany.