dotnetomaniak.pl

dotnetomaniak.pl - Artykuły z tagiem .Net

W poprzednim wpisie przedstawiłem klasę CSharpSyntaxWalker – przydatną przy analizie drzewa kodu. Dzięki niej, automatycznie bez pisania kodu rekurencyjnego jesteśmy w stanie przejść przez każdy element kodu. Dzisiaj o analogicznym rozwiązaniu ale służącym do przepisywania kodu a nie tylko jego analizowania. Mechanizm działa bardzo podobnie do CSharpSyntaxWalker. Wystarczy, że stworzymy klasę dziedziczącą po CSharpSyntaxRewriter:publicclass CustomRewriter : CSharpSyntaxRewriter { publicoverride Synt...

Tagi: .Net, C#, roslyn
Dziel się z innymi:
Roslyn–przepisywanie kodu

Inne 622 dni, 11 godzin, 52 minuty temu rroszczyk 137 rozwiń

Tworzenie instrukcji warunkowych jest czymś naturalnym w praktycznie każdym języku programowania. Trudno sobie jest wyobrazić kod źródłowy nawet najprostszej aplikacji, który byłby pozbawiony konstrukcji IF - w pewnym sensie tego rodzaju instrukcje, kontrolują przepływ sterowania. Warto wiedzieć, że w C# nasze możliwości na tym polu są jeszcze większe m.in. dzięki dyrektywom preprocesora. Dyrektywy preprocesora wpływają na to co zostanie skompilowane. Możemy np. inny fragment kodu przeznaczyć dla kompila...

Dziel się z innymi:
Efektywne wykorzystanie dyrektyw preprocessora

Sztuka programowania 630 dni, 9 godzin, 54 minuty temu rroszczyk 362 rozwiń

W ostatnim poście pokazałem jak za pomocą LINQ można przeglądać drzewo kodu. Czasami jest to jednak niewygodne. Załóżmy, że piszemy konwerter z C# na jakiś inny język. W takiej sytuacji, prawdopodobnie chcemy mieć dostęp do każdego elementu kodu. Możemy to zrobić za pomocą LINQ, ale jest to mało wygodne. Musielibyśmy pisać kod rekurencyjny, który dla skomplikowanych kodów jest jak wiadomo mało wydajny, a nawet może zakończyć się wyjątkiem OutOfMemory. Do dyspozycji jednak mamy klasę CSharpSyntaxWalker. ...

Dziel się z innymi:
Roslyn – przeglądanie drzewa

Sztuka programowania 630 dni, 9 godzin, 54 minuty temu rroszczyk 127 rozwiń

Analiza kodu za pomocą LINQ to chyba esencja Roslyn.  Bez Roslyn, kod był dla nas jak zwykły tekst (string) i w przypadku jakiejkolwiek analizy, musieliśmy sami parsować tekst i rozpoznawać odpowiednie fragmenty....

Tagi: .Net, C#, Linq, roslyn
Dziel się z innymi:
Roslyn–analiza kodu za pomocą LINQ

Web 630 dni, 9 godzin, 54 minuty temu rroszczyk 235 rozwiń

W poprzednim wpisie, w dużym skrócie przedstawiłem po co powstał Roslyn i komu może przydać się. W kilku kolejnych postach, zaprezentuję w praktyce jego najważniejsze funkcje. Zaczynami od scripting API.  APi szczególnie przydatne w przypadku edytorów do gier czy bardziej zaawansowanych reguł biznesowych. Zacznijmy od klasycznego “hello world”...

Tagi: .Net, C#, roslyn
Dziel się z innymi:
Roslyn – Scripting API

Narzędzia 634 dni, 23 godziny, 36 minut temu rroszczyk 128 rozwiń

O projekcie Roslyn od dawna już słychać, ale jeszcze nigdy nie miałem okazji z niego poważnie korzystać, ani wspomnieć o tym na blogu. Czym jest więc Roslyn? W skrócie pisząc jest to “compiler as service”. Roslyn dostarcza API za pomocą, którego możemy komunikować się kompilatorem.  Możemy zatem pisać programy, które rozpoznają kod (C#) i mogą go dynamicznie wykonywać. Innymi słowy, dzięki Roslyn jesteśmy w stanie załadować kod w formie czystego tekstu i w pamięci analizować go  już jako strukturę dany...

Tagi: .Net, roslyn
Dziel się z innymi:
Roslyn – wprowadzanie

Narzędzia 637 dni, 9 godzin, 12 minut temu rroszczyk 319 rozwiń

W architekturze WinRT możemy korzystać z dwóch bardzo przyjemnych kontrolek do prezentacji danych - ListView oraz GridView. Obie te kontrolki mają duże możliwości konfiguracyjne, posiadają sporo zdarzeń i można je również fajnie ostylować. Jednym słowem jest naprawdę dobrze;-) Naszą piękną, idealistyczną sielankę może jednak w łatwy sposób zakłócić, pewien dość prozaiczny problem, który nazywa się nadmiar danych. Tego rodzaju sytuacja zasadniczo nie ma żadnych pozytywów. Nasza aplikacja pochłonie duże il...

Implementacja dynamicznego doczytywania treści w kontrolce ListView

Sztuka programowania 639 dni, 10 godzin, 37 minut temu rroszczyk 167 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.

WCF services with claims-based authentication and authorization | Future Processing

Architektura 642 dni, 12 godzin, 22 minuty temu FutureProcessing 142 rozwiń

Bardzo często tworzymy osobne usługi, które dostarczają jakieś dane. Pisząc aplikacje ASP.NET Web nierzadko chcemy korzystać z zewnętrznych usług, zamiast hostować dane w tym samym projekcie. Niestety może to spowodować problemy, jeśli chcemy skonsumować usługę w JavaScript, a należy ona do innej domeny. Załóżmy, że mamy jakąś usługę REST. Dla testów posłużyłem się http://www.mocky.io. Polecam tą stronę, można generować tam własne “mocki”.  Dla tego wpisu stworzyłem mock, który zwraca następującą treść ...

Tagi: .Net, JavaScript, REST
Dziel się z innymi:
JSONP – wywoływanie zewnętrznych usług z JavaScript

Programowanie rozproszone 647 dni, 2 godziny, 11 minut temu rroszczyk 181 rozwiń

Aplikacje na telefon pełnią różne funkcje, ale z założenia często są one mobilnym odpowiednikiem stron WWW. I choć w dzisiejszych czasach coraz więcej mamy w sieci stron responsywnych, to i tak komfort pracy z dedykowanym programem wciąż często bywa znacznie wyższy. Nie oznacza to oczywiście, że strony WWW na przeglądarce telefonu są czymś złym.. czasem jest to naprawdę dobra opcja na start. Okazuje się również, że dzięki RWD możliwe jest również łatwe osadzanie pewnych fragmentów witryn bezpośrednio w a...

Dziel się z innymi:
Hakowanie strony w kontrolce WebView

Mobile development 647 dni, 2 godziny, 11 minut temu rroszczyk 210 rozwiń

Have you ever written a program with such a complex algorithm that despite of using all processor cores the implementation wasn’t efficient enough? If yes, this is the moment you should consider using a more efficient device than CPU.

[EN] When processor is not enough | Future Processing

Sztuka programowania 648 dni, 10 godzin, 43 minuty temu FutureProcessing 200 rozwiń

Rynek aplikacji mobilnych rozwija się niezwykle dynamicznie w ostatnich latach. Programy na telefony dotykają dzisiaj naprawdę wielu ważnych i istotnych obszarów naszego codziennego życia. Coraz częściej tego rodzaju aplikacje funkcjonują w chmurze, dzięki czemu mamy łatwy dostęp do wszystkich niezbędnych nam informacji, niezależnie od tego gdzie jesteśmy i z jakiego urządzenia aktualnie korzystamy. Wykorzystanie chmury wiąże się najczęściej z użyciem odpowiedniego API, do którego podłączają się wszystki...

HttpClient - równoległe pobieranie danych z różnych żródeł

Mobile development 654 dni, 11 godzin, 36 minut temu rroszczyk 337 rozwiń

My motivation for writing this article is to show that even a small new feature can have impact on the overall site availability. You can try to use right technology. How to do this? The answer is as usual ‘it all depends’. What I would like to do, in this article, is not to provide the final answer, but to show you options, solutions and ideas for a given use case.

SignalR – handling browser connection limits | Future Processing

Inne 657 dni, 12 godzin, 12 minut temu FutureProcessing 154 rozwiń

Dekorator to jeden se strukturalnych wzorców projektowych, dzięki któremu możemy wykorzystać kompozycję w alternatywie do dziedziczenia w celu rozszerzenia zachowania klasy. W przypadku dziedziczenia klasa rozszerzana jest w trakcie kompilacji w przeciwieństwie do dekoratorów, które rozszerzają klasy w trakcie działania programu.    Wzorzec projektowy Dekorator pozwala na dynamiczne przydzielanie danemu obiektowi nowych zachowań. Dekoratory dają elastyczność podobną do tej, jaką daje dziedziczenie, o...

Dziel się z innymi:
Wzorce projektowe – dekoratory

Sztuka programowania 666 dni, 5 godzin, 6 minut temu rroszczyk 432 rozwiń

Ponad dwa lata temu polskim Internetem wstrząsnęła ustawa o ciasteczkach, która nakazuje właścicielom stron informować użytkowników, że na ich witrynie mogą być oni śledzeni za pomocą cookies. Denerwujące popupy i divy informujące o ciasteczkach, zaczęły wyrastać jak grzyby po deszczu. Nowa regulacja nazwała po imieniu to o czym wiedzieli wszyscy internauci - jesteśmy śledzeni. O ile jeszcze śledzenie zarobkowe może być denerwujące (ciekawe skąd cały Internet nagle wie, że szukałem przed chwilą wakacji?)...

Biblioteki warte poznania w C# - Google Analytics SDK for Windows 8 and Windows Phone - Alt Control Delete

Web 668 dni, 14 godzin, 6 minut temu rroszczyk 134 rozwiń

Tag Helpers mają na celu ułatwić tworzenie widoków. Cel jest taki, aby widok jak najbardziej przypominał czysty plik HTML. Pierwszym etapem było wprowadzenie Razor, a teraz w MVC 6 mamy tzw. Tag Helper. W celu przetestowania tego samemu, należy zainstalować najpierw Visual Studio 2015. Zacznijmy od przykładu. Klasyczny sposób na definiowanie linku to...

ASP.NET MVC 6 Tag Helpers

Web 668 dni, 14 godzin, 6 minut temu rroszczyk 220 rozwiń

Niedawno pojawiła się wersja RC VS 2015. Wraz z nią, dodano nowe narzędzie diagnostyczne.  O  performance hub pisałem już wielokrotnie. Visual Studio coraz więcej narzędzi zewnętrznych wbudowuje w IDE. Mamy zatem już do dyspozycji profilery jak i o RC, diagnozowanie ruchu sieciowego....

Dziel się z innymi:
Visual Studio 2015 RC – network

Narzędzia 676 dni, 23 godziny, 45 minut temu rroszczyk 245 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.

Introduction to Claims-Based Authentication and Authorization in .NET - how to build Active STS | Future Processing

Architektura 676 dni, 23 godziny, 45 minut temu FutureProcessing 158 rozwiń

Microsoft od zawsze stawiał na kontrolki w swoich aplikacjach. Mieliśmy z nimi do czynienia w Windows Forms, ASP.NET, WPF, a także Silverlight. Nie mogło ich oczywiście zabraknąć również w aplikacjach uniwersalnych. Każda z kontrolek ma swój zestaw właściwości oraz zdarzeń, które z założenia mają zaspokajać podstawowe potrzeby użytkowników. W praktyce, zestaw ten często jest niewystarczający. Co zrobić w takiej sytuacji? Zamiast kombinować z istniejącymi właściwościami i metodami, możemy spróbować stworz...

Dziel się z innymi:
Pivot na sterydach - dodajemy nowe funkcje do kontrolki

Mobile development 680 dni, 11 godzin, 43 minuty temu rroszczyk 200 rozwiń

Enum jest bardzo pożyteczną konstrukcją, której używam praktycznie w każdym, nawet najmniejszym projekcie. Enumeracja ma praktycznie same zalety - przede wszystkim pozwala na definiowanie stałych wartości, które później można łatwo użyć w dowolnym miejscu w naszym kodzie. Jak na razie wszystko jest jasne i oczywiste. Mniej znaną właściwością enumów jest praca w trybie flagi, dzięki czemu enumeracja dostaje dodatkowego kopa;-) Przykład umieszczony w dalszej części tekstu pokaże jakie może to przynieść kor...

Tagi: .Net, C#, HOWTO, Linq
Dziel się z innymi:
Enum jako flaga

Sztuka programowania 692 dni, 14 godzin, 16 minut temu rroszczyk 379 rozwiń

1 2... 12 13 14 15 16 17... 40 41
Szkolenia SecurITum

kwiecień

03.
4developers
Warszawa
22.
GET.NET
Łódź
26.
CodeEurope
Kraków
Zobacz wszystkie

Najaktywniejsi

1

macko (32 816,53)

2

http://pawlos.blo... (31 564,45)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,87)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 383,88)

8

Damian (9 041,08)

9

danielplawgo (7 235,99)

10

arek (6 807,9)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 498,06)

15

jedmac (3 298,38)

16

http://jakub-flor... (3 224,66)

17

CaMeL (2 954,87)

18

spetz (2 653,17)

19

mnikolajuk (2 596,93)

20

lkurzyniec (2 560,56)