How to make your 'debugging life' easier with DebuggerDisplay attribute
Sztuka programowania 3701 dni, 9 godzin, 41 minut temu 161 źrodło rozwiń
How to compile/build/debug your MVC Views (*.cshtml files)
Debugging complex exceptions with $exception pseudovariable
Kilka lat temu robiłem coś takiego za pomocą ILMerge. Wymagało to własnego Post build event, etc. Teraz jest rozwiązanie out of the box - Costura.Fody. Wystarczy ściągnąć nugetem.
Wiele aplikacji wymaga generowanie dokumentów PDF – i dobrze, bo są fajne. Gdy jednak programista rzucony zostaje w całe wzburzone morze możliwych do zastosowania rozwiązań, bo nie jest już tak wesoło. Kiedyś było prosto: brało się iTextSharp i wsio. Jednak od paru lat (?) licencja tego komponentu się zmieniła, i ja w sumie sam nie wiem kiedy można a kiedy nie można go używać oraz ile to kosztuje. Z niego korzystają inne dostępne rozwiązania,...
Niedawno w projekcie pisałem małą apkę która wykonywała pewne działanie, które muszą być uruchamiane cyklicznie. W celu uzyskania dostępu do katalogu aplikacji użyłem zmiennej System.Environment.CurrentDirectory . Wszystko działało podczas debugowania. Jakies było moje zdziwienie, gdy okazało się, że zmienna ta wskazuje na katalog C:\Windows\System32\ podczas uruchamiania procesu przez Task Scheluder, zamiast katalogu aplikacji. Po długich lecz owocnych :) poszukiwaniach udało mi się znaleźć rozwi...
Sztuka programowania 4033 dni, 9 godzin, 15 minut temu 330 źrodło rozwiń
Chcemy zaznaczyć, że klasa możemy być użyta w jakiś sposób, jednocześnie nie definiując żadnych metod, które klasa miałaby implementować. Może się wydawać, że takie coś nie powinno mieć miejsca, bo zawsze chcemy wykonać logikę która została zaimplementowana dzięki kontraktowi zwanemu interfejsem. Przykładami, że jednak czasem tak bywa są INamingContainer w ASP.NET oraz Serializable w Javie.
Sztuka programowania 4090 dni, 4 godziny, 23 minuty temu 241 źrodło rozwiń
07.27.13 by MJ My friend has asked this question one week ago. He was not able to understand the usage of interfaces in his small projects. I decided to explain it, but I knew that it would be a long journey, from the beginning to the end. FInally he got the idea. Today I will try to explain this to you, audience. “Q” is defined as a question. “A” as an answer. Q: What is interface? A: We can say that interface is a kind of class which has declarations of all methods, properties or events. I...
Sztuka programowania 4104 dni, 4 godziny, 40 minut temu 251 źrodło rozwiń
PowerShell - mimo, że wydaje się, iż jest on klasycznym językiem skryptowym, w rzeczywistości jest dużo bardziej złożony i zaawansowany! W przeciwieństwie do narzędzi z grupy wiersza poleceń, w PowerShellu możemy korzystać z obiektów .NET, WMI, czy COM. Daje to ogromne możliwości.
W poprzednim wpisie opisałem extension methods, dzisiaj czas na kolejny element moim zdaniem bardzo ważny do zrozumienia działania linq mianowicie słowo kluczowe yield. Dla przypomnienia Linq jest połączeniem 5 elementów:extension methodsyieldFunc, Predicate, Actionwyrażenia lambdaIQueryable i Expression Trees Zasadę działania słowa kluczowego yield najlepiej zobrazuje przykład. Załóżmy, że mamy metodę, która generuje ...
Sztuka programowania 4139 dni, 11 godzin, 14 minut temu 165 źrodło rozwiń
XAdES to najbardziej popularny format podpisu elektronicznego w Polsce. Występuje on w kilku odmianach: zwykły, ze stemplem czasowym, dodatkowymi informacjami itd. Czasami zachodzi potrzeba zweryfikowania podpisu elektronicznego w .NET. Jakiś czas temu miałem podobny problem. Pokopałem trochę w Google i w MSDN i znalazłem w .NET Framework ciekawą klasę SignedXml...
Sztuka programowania 4171 dni, 7 godzin, 44 minuty temu 1401 źrodło rozwiń
Za pomocą flag bitowych można wykonywać bitowe operacje na liście wartości stałych. Deklaracja jest podobna do deklaracji zwykłego enuma, jednak należy zwrócić uwagę na dwie rzeczy: Przed deklaracją należy dopisać [Flags], aby zaznaczyć, że będziemy korzystać z flag bitowych. Po drugie każdy element musi być kolejną potęgą liczby 2 (jeżeli tego jawnie nie podamy, każdy kolejny element będzie zwiększany o 1 i przy operacjach bitowych będą występować (naszym zdaniem) błędy), np:[Flags] enum Zwierze ...
“Masowa” i “SmtpClient” w jednym zdaniu? Nie, to nie jest żart. Każdy, kto choć raz musiał wysyłać serię maili z poziomu kodu C# pomyśli, że zwariowałem. Blokowanie wątku, cała gama wyjątków, które może rzucić metoda Send(), czy obsługa stanu aplikacji po takim błędzie. To ważniejsze atrakcje, jakie możemy napotkać korzystając z tej klasy. Jest na to jedna prosta metoda. Wróć. Właściwość… DeliveryMethod.
Sztuka programowania 4261 dni, 3 godziny, 53 minuty temu 225 źrodło rozwiń
WebAuthenticationBroker jest ciekawą klasą umożliwiającą autoryzację użytkownika poprzez protokół OAuth 2.0. Czy możemy jednak zrobić coś równie dobrego? Oczywiście, że tak.W tym wpisie zostanie przedstawiony sposób stworzenia swojego brokera do logowania użytkownika w wybranym serwisie.
Sztuka programowania 4299 dni, 10 godzin, 49 minut temu 107 źrodło rozwiń
Posted by slanto on Załóżmy, że mamy zdefiniowaną stałą listę dostępnych pół formularza: imię, nazwisko, data urodzenia, płeć. Pola te mogą być wyświetlane w różnych konfiguracjach, np. Imię z nazwiskiem, nazwisko z datą urodzenia lub tylko płeć. Pomijając fakt że z reguły typy wyliczeniowe łamią zasadę Open/Closed principle (http://pl.wikipedia.org/wiki/Zasada_otwarte-zamkni%C4%99te) i zastosowanie ich w tym przypadku może nie jest najlepszym pomysłem, to jednak chcąc pokazać jak zachowuje się typ...
Sztuka programowania 4577 dni, 1 godzinę, 14 minut temu 221 źrodło rozwiń
Witam Ostatnio napotkałem na dość ciekawy wyjątek podczas wykonywania NHibernatowego inserta. W bazie danych mam prostą tabelę Do takiej tabeli został stworzony model namespace Model { public class Appointment { public virtual int Id { get; set; } public virtual string Name { get; set; } public virtual DateTime StartDate { get; set; } public virtual TimeSpan Duration { get; set; } } } oraz mapping namespace Model.Mappings { public class AppointmentM...
Witam Ostatnio modyfikując mój kod stanąłem przed problemem rzutowania obiektu typu MembershipUser(z namespaca System.Web.Security) na mój własny typ UserDTO. Klasa UserDTO nie wyróżnia się niczym specjalnym i wygląda następująco public class UserDTO : UserBase { public string Id { get; set; } public string Email { get; set; } public string DisplayName { get; set; } } Podejściem dość oczywistym w takim przypadku jest utworzenie odpowiedniego konstruktora w klasie...
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ć ;-)
Omówienie zasad tworzenia płytkich i głębokich kopii obiektów w języku C#.
Artykuł napisany przez początkującego programistę przedstawia opis krok po kroku tworzenia aplikacji wyświetlającej nazwy krain na mapie Śródziemia. Młody autor ma nadzieję nauczyć się czegoś od doświadczonej społeczności .net i pomóc jej mniej zaawansowanym członkom.