Visual Studio to potężne narzędzie, o ogromnych możliwościach, które pozwala tworzyć i debugować programy w łatwy i przyjemy sposób. Dobra znajomość swojego środowiska pracy do podstawa dla każdego programisty. Dlatego poniżej zamieszczam opis kilku "zaawansowanych" narzędzi udostępnionych w Visual Studio. Tak naprawdę prezentowane przeze mnie techniki nie są ani trudne, ani skomplikowane w użyciu. Nie ulega jednak wątpliwości, że są stosunkowo mało znane. Działają poprawnie w przypadku języka C# (dla in...
Strona głównaUżytkownik
Damian | użytkownik
W poście tym chciałbym zachęcić do używania darmowego narzędzia Process Monitor, które umożliwia monitorowanie wszelkiej aktywności w systemie operacyjnym dotyczącej zasobów takich jak: pliki, klucze rejestru, połączenia sieciowe itd. Pożytki płynące z tego narzędzia opiszę na swoim przypadku. Ostatnio napisałem prostą bibliotekę, która parsuje plik Xml, przetwarza jego zawartość przy pomocy transformacji Xsl w celu stworzenia plików Html i finalnie uruchamia kompilator pomocy w celu wytworzenia pli...
Czy zastanawialiście się kiedyś jak działa słowo kluczowe yield? Jeśli ktoś nie kojarzy tej konstrukcji to w telegraficznym skrócie pozwala ona (między innymi) w bardzo łatwy sposób zaimplementować interfejs IEnumerable. Interfejs ten wymagana dostarczenia tylko jednej metody, która powinna zwrócić instancję klasy implementującej IEnumerator. Zaimplementowanie tego interfejsu nie powinno przysporzyć znacznych trudności ale wymaga już trochę większego nakładu pracy. Przykładowe, uproszczone użycie yield ...
Wszystkich zainteresowanych rozpoczęciem zabawy z technologią Microsoft'u ADO.NET Data Services (nazwa kodowa Astoria) chciałbym zachęcić do zapoznania się z serią filmików spod znaku How Do I: Getting Started with ADO.NET Data Services over a Relational DatabaseGetting Started with ADO.NET Data Services over a Non-Relational Data SourceConsuming an ADO.NET Data Service in a Silverlight ApplicationConsume an ADO.NET Data Service in a .NET ApplicationAstoria umożliwia naprawdę łatwy i szybki sposób udos...
Bazy danych i XML poniedziałek, 9 listopada 2009 12:53:48 GMT 37 spam? źrodło rozwiń
Zapraszam do zapoznania się z kolejną porcją ciekawych i mało znanych funkcji Visual Studio. Breakpoint w pętli Bardzo przydaną funkcją jest możliwość postawienia breakpoint'a w definicji pętli for lub foreach. Załóżmy, że mamy taki kod: for(int i = GetValue(); i Domyślne zachowanie środowiska jest takie, że po kliknięciu linii, w której znajduje się początek pętli i naciśnięciu przycisku F9breakpoint zostanie ustawiony na części inicjalizacyjnej pętli czyli uzyskamy taki efekt: for(int i = GetValue(); ...
Nie każdy zdaje sobie z tego sprawę ale poniższe dwie konstrukcje mają inną semantykę: try { ... } catch(Exception ex) { throw; } try { ... } catch(Exception ex) { throw ex; } Różnica jest taka, że stosując pierwszą z nich nie tracimy informacji zawartej w stosie wywołań (stack trace). To znaczy, że jeśli ponownie rzucony przez nas...
Ostatnio zainteresowałem się modelowanie procesów biznesowych. Spodziewałem się istnienie kilku standardów ale rzeczywistość naprawdę nie zaskoczyła. Świat BPM okazał się naprawdę bogaty. Sądzę, że porównanie do dżungli będzie nawet bardziej odpowiednie. Mamy więc: BPDM, BPEL4WS, BPML, BPMN, UML Activity Diagram, WSFL, XLANG, XDPL i sporo więcej. W poście tym chciałbym troszeczkę usystematyzować ten bałagan i wyjaśnić jak jak to rozumiem. Wstęp Zacznijmy od tego, że w procesie BPM należy wyróżnić dwa ...
Czy poniższy kod zawierający wywołanie metody LoadControl wydaje się wam poprawny? Jeśli tak to zapraszam do dalszej lektury. protected void Page_Load(object sender, EventArgs e) { ... Control control = LoadControl("~/MySimpleUserControl.ascx"); PlaceHolder1.Controls.Add(control); ((MySimpleUserControl)control).BackColor = Color.Yellow; ... } Niestety ale kod ten będzie działał poprawnie tylko do momentu kiedy dla kontrolki zostanie włączony mechanizm Output Cache, na przykład w na...
Przy używaniu transformacji Xsl należy pamiętać o przestrzeniach nazw Xml. Załóżmy, że mamy dokument Xml i transformację Xsl do jej przetwarzania: Transformajca wygląda natomiast tak: Wynikiem działania przedstawionej transformacji na przykładowym dokumencie Xml powinna być lista: bbb bbb Wynik będzie zupełnie inny jeśli zmodyfikujemy dokument Xml w następujący sposób: ... ... Po tej zmianie otrzymamy taki, mało przy...
Bazy danych i XML 5494 dni, 12 godzin, 45 minut temu 23 źrodło rozwiń
Jeśli potrzebujemy szybki i łatwo zaimplementować włączanie i wyłączanie kaskadowych arkuszy stylów na stronie możemy zastosować taki kod:
Ostatnio pomogłem rozwiązać dwa problemy z "nie działającymi" zdarzeniami. Jak to najczęściej bywa, znając rozwiązanie, problem wydaje się banalnie prosty. Ponieważ jednak dojście do rozwiązania nie zawsze jest już tak proste postanowiłem napisać ten post. Ogólnie problem został mi przedstawiony mniej więcej w taki sposób (luźny cytat): Podczepiłem się pod zdarzenia kilku kontrolek ale po wykonaniu post back'a do strony, metody obsługi zdarzeń nie są wołane. W obu wspomnianych sytuacjach obserwowany e...
Kolejny raz informacja za Maciejem Zbrzeznym – a co! Może niedługo wyszperam coś sam ;-) Ile razy zdarzyło się Wam zastanawiać, jak zadziała kawałek kodu w projekcie, nad którym właśnie pracujecie? I ile razy musieliście o taką informację (czyli – “jak to tak naprawdę zadziała”) oprzeć dalsze działania? Właśnie – mam wrażenie, że to jakieś niepisane tajemnicze prawo. W momencie gdy rozgrzebię projekt tak, że nic się nie kompiluje, lub gdy pracuję...
19.08.2009jQuery + VisualStudio 2008 = Error updating JScript IntelliSense: Object doesn’t support this property or method @ 2139:1autor: andrzej Idąc za ciosem postanowiłem dziś w pracy podłączyć jQuery w jednym z projektów. Po ściągnięciu najnowszej wersji (1.3.2) z google code i wrzuceniu na stronę, na której chciałem użyć jQuery, przywitało mnie w Visualu ostrzeżenie: Error updating JScript IntelliSense [ścieżka] – Object doesn’t support this property or method @ 2139:1. Pięknie się zaczyna – pomyś...
W projekcie dorzuconym do wpisu w którym opisałem podstawy SubSonica zawarłem okazyjnie jeden mechanizm, który czasem się przydaje, mianowicie : partial classes. Cała operacja polega na tym, że elementy danej klasy można rozdzielić (w jednym, lub kilku plikach) na mniejsze części korzystając ze słowa kluczowego partial. Ale po co rozkładać klasę na części, skoro jeśli wszystko będzie w jednym miejscu, to jest czytelniej? Sprawdza się to np. przy kilku(-nasto) osobowych projektach, gdy naraz kilku program...
Dzisiaj będzie trochę asp-owo, skoro mi się przydało, to myślę, że komuś z Was również się przyda. Podczas klepania kolejnej kontrolki często trafia się problem zaprezentowania graficznie jakiejś mniej lub bardziej ciekawej klasy. Oczywiście możemy spreparować własną klasę lepiąc kilka komponentów, ale często wystarczającym rozwiązaniem jest użycie ListView. Powiedzmy, że do pokazania mamy prostą klasę(zostawiam tylko propercje):publicclass OurClass { publicstring name{}; publicbool checkBox1{...
Dzisiaj ponownie odrobina o ASP.NET, ponownie gości ListView. Tym razem natrafiłem na teoretycznie prosty problem, na który jednakowoż rozwiązania mnie satysfakcjonującego nie znalazłem. W skład ListView wchodzi kilka template’ów, dających możliwość dość ładnej realizacji dodawania, usuwania czy edycji danych(prawdopodobnie o tym też nieco napiszę w najbliższej przyszłości) w kontrolce zawartych. Ja potrzebowałem dokonać banalnej rzeczy: w każdym wierszu zawarte były dwa checkboxy, możliwość zaznaczenia ...
Kilka miesięcy temu pisałem o komponencie do rysowania wykresów firmy Xceed. Teraz postanowiłem przyjrzeć się dwóm innym komponentom: Microsoft Chart Controls for Microsoft .NET Framework 3.5Dundas Chart for .NET Komponent pierwszy jest do pobrania za darmo ze strony Microsoftu. Za drugi trzeba już płacić ale producent udostępnia wersję demonstracyjną. Najpierw zainstalowałem komponent firmy Dundas. Od razu spodobał mi się program pokazujący przykłady różnych wykresów wraz z kodem. Dobre wrażenie s...
Oryginalny post: Who's Your Coding Buddy?Autor: Jeff Atwood Zdumiewa mnie, jak bardzo mój kod zyskuje na tym, że zostanie przejrzany przez kogoś innego. Nie mam tu na myśli formalnej recenzji kodu, wysyłania go do publicznej oceny w Internecie lub uciążliwego reżimu programowania w parach. Jedna szybka próba wyjaśnienia i pokazania mojego kodu koledze/koleżance z zespołu -- to zazwyczaj wystarcza, by wyłapać błędy. To oczywiście nie jest nic nowego. Doskonała książka autorstwa Karla Wiegersa Peer Revi...
W tej lekcji training kit robi długi wstęp na temat: „dlaczego mamy różne kodowania”, który sobie pominiemy. Dopiero na drugiej stronie pojawia się pierwsza istotna dla nas informacja, która mówi, że przestrzeń System.Text dostarcza nam klasy do kodowania i dekodowania. System.Text wspiera następujące kodowania:Unicode UTF-32: reprezentuje znaki unicode jako ciągi 32-bitowe. Do konwertowania używamy klasy UTF32Encoding. Unicode UTF-16: : reprezentuje znaki unicode jako ciągi 16-bitowe. Do konwertowania u...
Od wielu lat kiedy mam przyjemność korzystania z Visual Studio jako środowiska developerskiego nie mogę sobie wyobrazić pracy z nim bez….ReSharpera. Narzędzie to daje nam wiele przyjemności z codziennej pracy, takich małych jak uzupełnianie pisanego kodu, jak też tych większych pozwalających na analizę kodu, wykrywanie błędów. Visual Studio 2010 Beta 2 już króluje na wielu naszych komputerach, ale mi brakowało ReSharpera, teraz juz jest! nie to wersja oficjaln...