Do You ever wanted to run C# code in a scripty inline way to check if code will execute the way you want? This could be especially useful when you don’t have powerful visual studio with repl(interactive) and You are writing C# in something lightweight like vs code. I decided to write this post because installing scriptcs is cumbersom...
Posted on by krystiankolad W dzisiejszym poście przedstawię czym są klasy abstrakcyjne oraz interfejsy. Post ten jest swego rodzaju pilotażowym postem w moim nowym cyklu “Od zera do .Net Juniora”. Będę w nim opisywał oraz pokazywał zagadnienia, z którymi powinna być zaznajomiona osoba starająca się o swoją pierwszą pracę jako Junior .Net Developer. Mam nadzieję że cykl się przyjmie, jeśli chcecie poczytać o jakiś zagadnieniach piszcie, z chęcią o nich napiszę, jeśli je znam, lub się ich nauczę, a potem ...
Sztuka programowania 2648 dni, 23 godziny, 41 minut temu 114 źrodło rozwiń
Ostatnio jednym z zadań, którego postanowiłem się podjąć, było wprowadzenie do projektu prostego rodzaju Continuous Integration oraz Delivery. Do wymagań należało wprowadzenie kilku środowisk, każde miało posiadać inne ustawienia, a co najważniejsze możliwość deploy’u on demand, czyli na kliknięcie przycisku, bez żadnego ręcznego kopiowania. Po 2 dniach ciężkiej pracy i czarowania z pomocą PowerShell’a udało się, wszystko zaczęło działać jak powinno. Powiodło się przy pomocy TeamCity ora...
Mój poprzedni post dotyczył uwierzytelniania za pomocą Json Web Token w ASP.Net Core 1.1, jednak niedawno wyszedł .NET Core 2.0 i sposób użycia JWT jest już troszkę inny. Zanim przejdę do opisania tych zmian, najpierw parę słów o .NET Core 2.0. Przede wszystkim nowy .NET Core jest dużo szybszy od swojego poprzednika, teraz jest w stanie obsłużyć aż 20 tysięcy requestów na minutę. Olbrzymim plusem jest również zwiększona ilość dostępnych paczek dostępnych na nuget.org. W nowsz...
ConnectionManagement is a property found in app.config that allows to put a limit on number of connections to a specific host at tcp level. This affects http calls, every one of these need estabilished tcp connection “underneath”, client needs to reuse or open a new port to listen for the response fr...
Siemanko W dzisiejszym poście pragnę nieco przybliżyć temat automatycznych testów end2end i pokazać przykładowy teścik. Jak wszyscy pracujący m.in. przy webie wiemy, że ostateczne testy wykonują zazwyczaj ludzie klikając myszką i stukając w klawiaturę. Bez względu na fakt pokrycia kodu testami jednostkowymi, które przed r...
Last time we finished with all the pieces except the common:MahAppsPopupWindowAction used in XAML. Prism already has a PopupWindowAction (it wasn't there a few years ago) so let's use that to create our own popup window action that will show MahApps-metro-style-dialog.
Dzisiejszy post dotyczy logowania używającego Json Web Token. Mechanizm logowania polega na wygenerowaniu niepowtarzalnego tokena, na podstawie którego użytkownik może zostać zidentyfikowany. Następnie, przy innych wykonywanych requestach do API jest weryfikowana poprawność tokena, który otwiera dostęp do pozostałych funkcjonalności danego systemu. Celem jwt jest potwierdzenie, że dane zostały wysłane z prawdziwego, prawidłowego źródła. Skoro już wiadomo, jak przebiega schema...
Chciałbym podzielić się dziś z wami wiedzą o Swagger’ze, świetnym narzędziu do prostego, bezbolesnego, a co najważniejsze szybkiego i skutecznego dokumentowania API.
Recently, I was tricked by Roslyn, today by Json.NET. My bloody luck ;) Let's look at the following two very simple classes. Class A has one readonly property and I had to define a special constructor to allow Json.NET to set this property. B is also simple. It has one property, this time of type A with some default value...
Sztuka programowania 2675 dni, 12 minut temu 108 źrodło rozwiń
Witaj w kolejnej części cyklu o bibliotekach .Net do komunikacji ze sterownikami Siemensa. Moim zdaniem najlepiej uczyć się nowych rozwiązań za pomocą działających przykładów. W związku z tym, zamiast prezentować “na sucho” działanie bibliotek zdecydowałem się przygotować trochę kodu, który pozwoli je przetestować w praktyce. W związku z tym przygotowałem projekt prostego programu dla sterownika oraz szkic prostej aplikacji WinForms, która posłuży nam do testów.
At Monday, we have a highly anticipated release – .Net Core 2.0 ! If it is not enough, we also got a new version of Visual Studio 2017 – update 15.3 (and I will write about it in the nearest feature). So now, I will try to show you the most interesting features of the youngest .Net kid.How to start? Installing update of Visual Studio 2017 is nothing extraordinary, so I will not write about it 😉. What may not seem very obvious, is the fact that we need to (additionally) install .Net Core 2.0 SDK....
Aplikacje mobilne w Xamarinie można tworzyć zarówno pod Windows jak i Mac OS. Jednak, który system wybrać do codziennej pracy? Osobiście tworzę aplikacje mobilne pod iOS oraz Android, więc od jakiegoś czasu przesiadłem się tylko i wyłącznie na Mac OS. Wcześniej pracowałem na Windowsie z podłączonym Makiem do kompilacji iOS. Jednak takie podejście przysporzyło mi sporo problemów, o których będę pisać w tym poście.
Mobile development 2680 dni, 14 godzin, 51 minut temu 137 źrodło rozwiń
When I started learning .Net Core some time ago I was constantly encountering a ‘.Net Standard’. I knew what it means and that it is (somehow 😉 ) important for me but didn’t really care about it. It’s just the standard, right? Who would care about it, when there is so many new things to discover (yep, I was an ignorant!). I changed my mind the last week – when the .Net Standard 2.0 was finally released. So, what the .Net Standard is? It is the standard common for every .Net technology. It ensures ...
Zacząłem ostatnio pracować nad aplikacją do certyfikowania sędziów dla Polskiej Ligi Quidditcha. Postanowiłem napisać ją w F# i Suave, mając na celu zrobić jak najlepszą robotę pod względem bezpieczeństwa. Postanowiłem zaimplementować swój własny system sesji, który jest prostszy od gotowego w Suave.
Witaj w kolejnej części cyklu o bibliotekach .Net do komunikacji ze sterownikami Siemens-a. Zajmiemy się dzisiaj pokrótce samym protokołem komunikacyjnym oraz niezbędną konfiguracją po stronie sterownika (w przypadkach gdy jest takowa potrzebna). Do niedawna niekwestionowanym królem w świecie Siemens-a jeżeli chodzi o komunikację PC-PLC był standard Profibus/Mpi. Komunikacja ethernetowa była oczywiście dostępna, ale w przypadku niższych modeli sterowników wymagała dokupienia specjalistycznego procesora ...
Welcome to the twenty-third episode of my course “Becoming a software developer” in which we will focus on the vast topic of DevOps which is all about building, testing and deploying the application. And we will use Docker to help with the overall process.
Tym postem chciałbym dać początek krótkiej serii opisującej biblioteki .Net do komunikacji ze sterownikami PLC Siemens. Tematyka jest co prawda trochę niszowa, ale skutkuje to również brakiem szerszej informacji na ten temat w sieci. Ponieważ mam sporo doświadczenia w realizacji tego typu komunikacji w .Net chciałem się nim nieco podzielić zarówno w kwestii doboru biblioteki komunikacyjnej jak i dobrych praktyk, które udało mi się wypracować zajmując się tą tematyką.
So, currently I’m working on a brand-new project involving variety of services being run on Service Fabric cluster in Azure. I’ve never had anything to do with Service Fabric (except for one, short hackathon) before, nor have any of my team mates. For the last couple of weeks, we’ve been struggling to make good architectural choices for the platform we’re still learning about. For the last few days we were working on a service that on certain triggers will populate Redis cache with certain sets of valu...