Sprawa komunikowania klienta w usłudze WCF pracującej jako RESTful może nie być proste na pierwszy rzut oka, jednak chwila googlingu i sprawa okazała się banalna. Jak skonfigurować usługę WCF żeby działała jak RESTful? Nasz interfejs, oraz usługa wygląda mniej więcej tak: Interfejs: [ServiceContract] public interface Iv1 { [OperationContract] [WebInvoke(Method = "GET", ResponseFormat = We...
Architektura 2451 dni, 4 godziny, 23 minuty temu 172 źrodło rozwiń
W tym wątku opiszę jak odpowiednio skonfigurować usługę WCF by uzyskać efekt RESTful API. Będziemy zwracać obiekty typu jSON/XML – co kto woli. Jeśli już utworzyłeś projekt WCF Service Application, możesz do niego dodać nową usługę lub skorzystać z dodanej domyślnie. Zmieniamy/dodajemy sekcję w Web.config Zwróć uwagę na sekcje service, servicebehaviors, endpointbehaviors – prawdopodobnie w tych miejscach musiałeś wprowadzi...
Architektura 2456 dni, 12 godzin, 47 minut temu 232 źrodło rozwiń
W 25 odcinku DevTalk wracamy do tematu architektury. Tym razem moim Gościem jest Szymon Kulec: programista, blogger, prelegent i jeden z liderów Warszawskiej Grupy .NET. Na Twitterze: @scooletz. Dyskutujemy o Event Driven Architecture. Z odcinka dowiecie się czym jest EDA, o jakich zdarzeniach mowa i jak z nich korzystać. Do tego: jak ma się do tego CQRS i Event Sourcing, na czym polega eventual consistency oraz jak obsługiwać/przetwarzać zdarzenia? I… oczywiście, wiele więcej :). Zapraszam do słuchania...
Architektura 2465 dni, 8 godzin, 23 minuty temu 199 źrodło rozwiń
W kilku poprzednich postach pisałem o tym jak powinna wyglądać czysta i przejrzysta architektura aplikacji. Kluczową rzeczą w takiej architekturze jest jednokierunkowy przepływ wywołań od kontrolera do prezentera. Kłopot z taką architekturą pojawia się, gdy mamy narzucaną architekturę w której naszym punktem wejścia do obsługi zdarzenia jest metoda, która musi zwrócić wynik poprzez return...
Architektura 2484 dni, 13 godzin, 35 minut temu 363 źrodło rozwiń
Dzisiaj technicznie-architektonicznie. Dwudziesty drugi odcinek DevTalka pod znakiem WIADOMOŚCI i KOMUNIKACJI stoi. Reflektor w te mgliste pojęcia kieruje Szymon Pobiega: programista/architekt, blogger, prelegent. Pracuje w Particular Software, gdzie klepie NServiceBusa dla Udiego Dahana (pamiętacie DevTalk#14 – CQRS with Udi Dahan?). Zatem: zdecydowanie wie o czym mówi! Z rozmowy dowiecie się czym tak naprawdę jest komunikacja i dlaczego warto sobie zawracać głowę jakimiś “wiadomościami” czy “kolejkami...
Architektura 2507 dni, 11 godzin, 47 minut temu 153 źrodło rozwiń
[EN] Offline Pessimistic Lock in Entity Framework (or any other ORM) | WellDesignedSoftwareException
It was always surprising to me that so few projects were started with data access concurrency in mind. I’ve heard many discussions about new fancy frameworks and UI controls the teams were about to use but possibility of concurrent access to users’ data didn’t appear to be a concern in their minds. Wen you think about it, it seems to be very logical. People have a natural tendency to avoid problems they haven’t encountered directly. There are so few people with attitude of challenging o...
Architektura 2509 dni, 13 godzin, 34 minuty temu 98 źrodło rozwiń
This is the second one of two posts concerning approach to build cost effective, but prepared for scaling, systems using ASP.NET Web API and Azure.
Architektura 2513 dni, 1 godzinę, 52 minuty temu 166 źrodło rozwiń
Wakacje, wakacje i po wakacjach. I bardzo dobrze, ile można, c’nie? Po wakacyjnej przerwie powracamy, zamaszyście, pomału i usłużnie. Ale suchy rebus! Mału -> mikru -> mikro. Usłużnie -> serwisowo -> service. Czyli: po wakacyjnej przerwie powracamy, zamaszyście, z mikroserwisami! Towarzyszy mi Michał Franc, który z dalekiego jUKeja wskoczył mi na Skype’a. Michał bloguje na http://www.mfranc.com, przemawia oraz jest jednym z organizatorów konferencji dotnetconf.pl. Na Twitterze możecie go stalkować pod @...
Architektura 2521 dni, 9 godzin, 35 minut temu 243 źrodło rozwiń
This is the first one of two posts concerning approach to build cost effective, but prepared for scaling systems, using ASP.NET Web API and Azure. In the era of building systems that aim to provide services at global scale, requirements for scalability and high availability are becoming our bread and butter. What is more, it is absolutely normal that stakeholders want first shippable version of software as soon as possible.
Architektura 2527 dni, 13 godzin, 2 minuty temu 165 źrodło rozwiń
In this post we’ll focus on security. We’ll try to prove that claims base authentication is safe. As we remember SAML tokens are issued by “trusted” STS. But what exactly does “trusted” issuer mean? In this post, we’ll try to find definition of “trusted issuer”, a list of attributes which decide that issuer is trusted.
Architektura 2532 dni, 15 godzin, 19 minut temu 102 źrodło rozwiń
To już jest… jeszcze nie koniec, ale prawie!, pierwszego, dziewiczego sezonu DevTalk. W poszukiwaniu własnej tożsamości natrafiłem na… eksperta w tej dziedzinie. Ale w kontekście IT, oczywiście. Dzisiaj przed Wami Tomasz Onyszko. Architekt, od zawsze w branży ;), niezmiennie związany z kwestiami zarządzania tożsamością w sieci. Oprócz tego pisze na firmowym blogu Predica i regularnie gości na grupach pasjonackich oraz krajowych i światowych konferencjach. Od lat “nosiciel” tytułu Microsoft MVP. Na Twitt...
Architektura 2603 dni, 14 godzin temu 123 źrodło rozwiń
In this article we focus on sample service based on WCF (Windows Communication Foundation), as we will only try to build sample service with claims-based authentication and authorization. All technical aspects connected with security e.g. configuration, certificates, encryption, signature or CRL will be described in details in the next posts.
Architektura 2603 dni, 14 godzin temu 144 źrodło rozwiń
In the previous article basic information about authentication and authorization process on .Net has been presented. Security Token Service is an integral part of claim based approach. As we remember from the previous article, STS is responsible for handling user’s requests and creating tokens; it can also work in two modes: active and passive. In this article we focus on Active STS, as we will only try to build sample STS.
Architektura 2638 dni, 1 godzinę, 23 minuty temu 167 źrodło rozwiń
W ASP.NET w końcu !!! w końcu !!! nie ma pliku csproj! Czy tam vbproj czy nawet SLN… Ja! :) no fajnie nie? :) Teraz wszystko działa wokół project.json file, który jest definicją naszego projektu jak i! definicją paczki nuget. Czyli jak się domyślacie referencje teraz pomiędzy projektami to referencje za pomocą paczek nuget…
Architektura 2650 dni, 14 godzin, 24 minuty temu 145 źrodło rozwiń
Dobra build trwa, ale i pewne rzeczy zostały już jakoś „ustabilizowane”, może warto o kilka prostych informacji co i jak :) Skarbnicą wiedzy teraz jest repozytorium Home ASPNET na Github. Tutaj znajdziecie informacje jak zainstalować DNVM (.NET Version Manager) na różnych platformach i jakie ekstra kroki są wymagane w zależności od środowiska (Linux, na macu za bardzo nie ma).
Architektura 2650 dni, 14 godzin, 24 minuty temu 101 źrodło rozwiń
Kestrel to serwer webowy umożliwiający hostowanie aplikacji .NET na różnych środowiskach w tym Linux i Mac._ Pamiętacie komendy z poprzedniego postu? Jeżeli chcemy hostować aplikację webową (której jeszcze nie mamy i pewnie w tym poście też jej mieć nie będziemy ;)) na wszystkich możliwych platformach to musimy lekko zmodyfikować nasz projekt dodając odpowiednie zależności i tworząc nową komendę. Komenda ta będzie p...
Architektura 2650 dni, 14 godzin, 24 minuty temu 94 źrodło rozwiń
Jak wiadomo w bajkach kryje się ukryta mądrość. W takim razie pora na bajkę, ale strzeżcie się – ukryta w niej mądrość może przewrotnie obrócić się przeciwko wam. Gotowi? No to zaczynam...
Architektura 2653 dni, 15 godzin, 54 minuty temu 218 źrodło rozwiń
I have started to think, what is the reason that people see it as hard and complex at the beginning? I have a theory: it has rules! Entering the world with rules is always uncomfortable, we need to adjust to rules. In this post I’d like to prove that in this case those rules are quite digestible.On the way to CQRS… Basically, we can say that CQRS is an implementation of Command Query Separation principle to the architecture of software. What I noticed during my work in this approach is that there is a c...
Architektura 2667 dni, 1 godzinę, 41 minut temu 298 źrodło rozwiń
Kilka wpisów wcześniej zacząłem tematykę micro-serwisów oraz wzorca bramki. Jednym z wyzwań podczas rozłupywania monolitu jest zbyt wysoka liczba zapytań do innych serwisów, co powoduje utratę wydajności. Jeśli w monolicie była klasa np. CustomersRepository to teraz będzie to kompletnie nowa usługa. Wysłanie wiadomości do takiej usługo odbywa się przez jakiś protokół – w przypadku REST zwykle jest to HTTP. W monolicie nie było ważne to, że wywołaliśmy np. GetCustomerById(1), potem GetCustomerById(2) i...
Architektura 2668 dni, 13 godzin, 54 minuty temu 160 źrodło rozwiń
ASP.NET MVC 6 supports both regular controllers (inheriting from Controller base type) and POCO controllers. Let’s have a look at how the discovery of them happens in ASP.NET MVC 6. Note that the code and mechanisms discussed in this article were introduced after ASP.NET 5 beta3 was released, so it is not yet available if you use the version of ASP.NET 5 bundled with Visual Studio 2015 CTP6.
Architektura 2674 dni, 23 godziny, 56 minut temu 184 źrodło rozwiń