ASP.NET and Web Tools 2013.2 dla informacji o wersji Visual Studio 2013

autor: Microsoft

Uwagi dotyczące instalacji

ASP.NET and Web Tools dla Visual Studio 2013.2 są dołączone do głównego instalatora i można je pobrać w ramach Visual Studio 2013 Update 2.

Dokumentacja

Samouczki i inne informacje o ASP.NET and Web Tools dla Visual Studio 2013.2 są dostępne w witrynie internetowej ASP.NET.

Wymagania programowe

ASP.NET and Web Tools Visual Studio 2013.2 wymaga Visual Studio 2013.

Nowe funkcje w ASP.NET and Web Tools dla Visual Studio 2013.2

W poniższych sekcjach opisano funkcje wprowadzone w wersji.

Jeden szablon projektu ASP.NET

  • Aktualizacje do ASP.NET szablonów projektu w celu obsługi potwierdzenia konta i resetowania hasła.
  • Zaktualizuj szablon internetowego interfejsu API ASP.NET w celu obsługi uwierzytelniania przy użyciu lokalnych kont organizacyjnych.
  • Szablon ASP.NET SPA zawiera teraz uwierzytelnianie oparte na widokach po stronie serwera i MVC. Szablon ma kontroler WebAPI, do którego można uzyskać dostęp tylko przez uwierzytelnionych użytkowników.

Obsługa protokołu SSL podczas uruchamiania aplikacji internetowych w IIS Express

Aby wyeliminować ostrzeżenie o zabezpieczeniach podczas przeglądania i debugowania protokołu HTTPS na hoście lokalnym, dodaliśmy okno dialogowe umożliwiające programowi Internet Explorer i Przeglądarce Chrome zaufanie do certyfikatu express SSL usług IIS z podpisem własnym.

Na przykład właściwość projektu internetowego można ustawić tak, aby korzystała z protokołu SSL. Kliknij klawisz F4, aby wyświetlić okno dialogowe właściwości. Zmień wartość ssl włączone na true. Skopiuj adres URL PROTOKOŁU SSL.

Właściwość włączona protokołu SSL

Ustaw kartę sieci Web strony właściwości projektu internetowego, aby używać adresu URL opartego na protokole HTTPS (adres URL protokołu SSL będzie https://localhost:44300/ używany, chyba że wcześniej utworzono witryny sieci Web SSL).

Ustawianie adresu URL projektu (HTTPS)

Naciśnij klawisze CTRL+F5, aby uruchomić aplikację. Postępuj zgodnie z instrukcjami, aby ufać certyfikatowi z podpisem własnym, który został wygenerowany IIS Express.

Ostrzeżenie SSL

Przeczytaj okno dialogowe Ostrzeżenie o zabezpieczeniach , a następnie kliknij przycisk Tak , jeśli chcesz zainstalować certyfikat reprezentujący hosta lokalnego.

Ostrzeżenie o zabezpieczeniach

Witryna będzie wyświetlana w programie IE lub Chrome bez ostrzeżenia o certyfikacie w przeglądarce.

Strona HTTPS bez ostrzeżeń

Firefox używa własnego magazynu certyfikatów, więc wyświetli ostrzeżenie.

Ulepszenia edytora internetowego programu Visual Studio

  • Nowy element projektu JSON i edytor: dodaliśmy element projektu JSON i edytor do programu Visual Studio. Bieżące funkcje edytora JSON obejmują kolorowanie, walidację składni, uzupełnianie nawiasów klamrowych, konspektowanie, ustawienie opcji narzędzi i nie tylko.

    Edytor JSON

    Funkcja IntelliSense obsługuje teraz schemat JSON w wersji 3 i 4. Istnieje pole kombi schematu, aby wybrać istniejące schematy, edytować ścieżkę schematu lokalnego lub po prostu przeciągnąć do niego plik JSON projektu, aby uzyskać ścieżkę względną.

    Edytor schematów JSON intellisense JSON

  • Nowy edytor Sass (SCSS): Dodaliśmy mniej w programie VS2013 RTM, a teraz mamy element projektu Sass i edytor. Funkcje edytora sass są porównywalne z edytorem LESS i obejmują kolorowanie, zmienną i mixins IntelliSense, komentarz/brak komentarza, szybkie informacje, formatowanie, walidacja składni, konspektowanie, definicja goto, selektor kolorów, ustawienie opcji narzędzi itp.

    Dodawanie nowego elementu:edytor arkuszy stylów scSS

  • Nowy selektor adresów URL w dokumentach HTML, Razor, CSS, LESS i Sass: Program VS 2013 jest dostarczany bez selektora adresów URL poza stronami Web Forms. Nowy selektor adresów URL dla edytorów HTML, Razor, CSS, LESS i Sass to bez okna dialogowego, bezproblemowe wpisywanie selektora, który rozumie "". i filtruje listy plików odpowiednio dla tagów i linków img.

    Zrzut ekranu przedstawiający nowe okno dialogowe, bezproblemowe wpisywanie, które jest l Selektor, który filtruje listę plików odpowiednio. Przykład ilustruje linki obrazów.Zrzut ekranu przedstawiający nowe okno dialogowe, bezproblemowe wpisywanie, które jest l Selektor, który filtruje listę plików odpowiednio. Przykład ilustruje linki h t m l.Zrzut ekranu przedstawiający nowy selektor edytorów c s, który filtruje listy plików odpowiednio dla tagów i linków i m g.

  • Aktualizacje do edytora LESS, dodając więcej funkcji

  • Knockout Intellisense Upgrade: Dodaliśmy niestandardową składnię KnockOut dla funkcji IntelliSense programu VS, "ko-vs-editor viewModel:" składnia. Może służyć do powiązania z wieloma modelami widoków na stronie przy użyciu komentarzy w formularzu:

    Knockout Intellisense

    Dodaliśmy również obsługę zagnieżdżonej funkcji IntelliSense modelu ViewModel, dzięki czemu można przechodzić do głęboko zagnieżdżonych obiektów w modelu ViewModel.

    <div data-bind="text: foo.bar.baz.etc" />

    Wyświetlona funkcja IntelliSense jest pełną funkcją IntelliSense obiektu JavaScript.

    Funkcja IntelliSense przedstawiająca pełny obiekt JavaScript

  • Nowy selektor adresów URL w dokumentach HTML, Razor, CSS, LESS i Sass: VS 2013 dostarczany bez selektora adresów URL poza stronami Web Forms. Nowy selektor adresów URL dla edytorów HTML, Razor, CSS, LESS i Sass to bez okna dialogowego, bezproblemowe wpisywanie selektora, który rozumie "". i filtruje listy plików odpowiednio dla tagów i linków img.

    Zrzut ekranu przedstawiający nowe okno dialogowe, bezproblemowe wpisywanie, które jest l Selektor, który filtruje listę plików odpowiednio dla tagów i m g i linków.Zrzut ekranu przedstawiający nowe okno dialogowe, bezproblemowe wpisywanie, które jest l Selektor, który filtruje listę plików odpowiednio, wyświetlając linki h t m l.Zrzut ekranu przedstawiający nowe okno dialogowe, bezproblemowe wpisywanie selektora dla edytorów c s, które filtruje listy plików odpowiednio dla tagów i linków g i m g.

  • Link przeglądarki obsługuje teraz połączenia HTTPS i wyświetla listę na pulpicie nawigacyjnym z innymi połączeniami, o ile certyfikat jest zaufany przez przeglądarkę.
  • Statyczne mapowanie źródła HTML
  • Obsługa SPA dla danych mapowania
  • Automatyczne aktualizowanie danych mapowania

Obsługa Azure App Service Web Apps w programie Visual Studio

Tworzenie zdalnych zasobów platformy Azure podczas tworzenia nowego projektu internetowego

Dodaliśmy pole wyboru "Utwórz zasoby zdalne" platformy Azure w oknie dialogowym nowej aplikacji internetowej. Po wybraniu tej opcji możesz zintegrować środowisko tworzenia nowej aplikacji internetowej, konfigurowania witryny publikowania platformy Azure na potrzeby testowania i tworzenia profilu publikowania w kilku prostych krokach.

Nowy projekt z zasobami platformy Azure— publikowanie na platformie Azure

Ulepszenia publikowania w internecie

  • Ulepszanie środowiska użytkownika do publikowania.

tworzenie szkieletów ASP.NET

  • Obsługa wyliczenia: Jeśli model korzysta z wyliczenia, szkielet MVC wygeneruje listę rozwijaną dla wyliczenia. Korzysta to z pomocników wyliczenia w MVC.
  • Obsługa programu Bootstrap: zaktualizowano edytoraFor templates w szkieletach MVC, aby używać klas Bootstrap.
  • Obsługa pakietów: szkielety mvC i internetowego interfejsu API będą dodawać pakiety 5.1 dla mvC i internetowego interfejsu API

Na poniższych zrzutach ekranu przedstawiono modele tworzenia szkieletów.

  • Kod modelu:

    Kod modelu

  • Skompiluj kod modelu, kliknij prawym przyciskiem myszy i wybierz pozycję Dodaj, Nowy element szkieletowy.

    Dodaj nowy element szkieletowy

  • Wybierz kontroler MVC5 z widokami przy użyciu programu Entity Framework:

    Dodawanie nowego kontrolera MVC5 z widokami

  • Dodaj kontroler przy użyciu modelu:

    Zrzut ekranu przedstawiający okno dialogowe Dodawanie kontrolera z wybraną klasą modelu i polem klasy kontekstu danych wybranym i wyróżnionym.

  • Sprawdź wygenerowany kod, na przykład Views/WeekdayModels/Edit.cshtml zawiera @Html.EnumDropDownListFor: Widok zawierający enumDropDownListFor

  • Uruchom stronę, aby wyświetlić wygenerowane pole kombi wyliczenia, zwróć uwagę, że jeśli wartość może mieć wartość null, można wybrać pusty ciąg dla pola kombi. Na przykład na stronie Tworzenie są wyświetlane następujące elementy:

    Pole kombi zezwalające na pusty ciąg

NuGet 2.8.1

NuGet 2.8.1 RTM zostanie wydany w kwietniu 2014 r. Poniżej przedstawiono najważniejsze punkty z informacji o wersji, ale zapoznaj się z pełnymi informacjami o wersji , aby uzyskać więcej informacji na temat tych zmian.

  • Aplikacje target Windows Phone 8.1: NuGet 2.8.1 obsługuje teraz określanie docelowych aplikacji Windows Phone 8.1 przy użyciu docelowych monikers platformy "WindowsPhoneApp", "WPA", "WindowsPhoneApp81" i "WPA81".

  • Rozwiązanie poprawek dla zależności: w przypadku rozwiązywania zależności pakietów pakiet NuGet w przeszłości zaimplementował strategię wybierania najniższej wersji głównej i pomocniczej pakietu, która spełnia zależności pakietu. W przeciwieństwie do wersji głównej i pomocniczej, jednak wersja poprawki zawsze była rozpoznawana jako najwyższa. Chociaż zachowanie było dobrze intencją, spowodowało to brak determinizmu podczas instalowania pakietów z zależnościami.

  • DependencyVersion Switch: Chociaż pakiet NuGet 2.8 zmienia domyślne zachowanie w celu rozpoznawania zależności, dodaje również bardziej precyzyjną kontrolę nad procesem rozwiązywania zależności za pośrednictwem przełącznika -DependencyVersion w konsoli menedżera pakietów. Przełącznik umożliwia rozpoznawanie zależności do najniższej możliwej wersji (zachowanie domyślne), najwyższej możliwej wersji lub najwyższej wersji pomocniczej lub poprawkowej. Ten przełącznik działa tylko w przypadku instalacji pakietu w poleceniu programu PowerShell.

  • DependencyVersion Attribute: Oprócz przełącznika -DependencyVersion opisanego powyżej, NuGet zezwolił również na możliwość ustawienia nowego atrybutu w pliku nuget.config definiującym wartość domyślną, jeśli przełącznik -DependencyVersion nie jest określony w wywołaniu install-package. Ta wartość będzie również uwzględniana przez okno dialogowe Menedżera pakietów NuGet dla wszystkich operacji pakietu instalacyjnego. Aby ustawić tę wartość, dodaj poniższy atrybut do pliku nuget.config:

    <config> <add key="dependencyversion" value="Highest" /> </config>

  • Operacje NuGet w wersji zapoznawczej Za pomocą polecenia -WhatIf: niektóre pakiety NuGet mogą mieć głębokie wykresy zależności i w związku z tym mogą być przydatne podczas operacji instalacji, odinstalowywania lub aktualizacji, aby najpierw zobaczyć, co się stanie. NuGet 2.8 dodaje standardowy program PowerShell — co w przypadku przełączenia do poleceń install-package, uninstall-package i update-package w celu umożliwienia wizualizacji całego zamknięcia pakietów, do których zostanie zastosowane polecenie.

  • Pakiet na starszą wersję: nie jest niczym niezwykłym zainstalowanie wersji wstępnej pakietu w celu zbadania nowych funkcji, a następnie podjęcia decyzji o wycofaniu się do ostatniej stabilnej wersji. Przed nuGet 2.8 był to wieloetapowy proces odinstalowywania pakietu w wersji wstępnej i jej zależności, a następnie instalowania wcześniejszej wersji. Jednak w przypadku pakietu NuGet 2.8 pakiet update-package przywróci całe zamknięcie pakietu (np. drzewo zależności pakietu) do poprzedniej wersji.

  • Zależności programistyczne: wiele różnych typów możliwości można dostarczać jako pakiety NuGet , w tym narzędzia używane do optymalizacji procesu programowania. Te składniki, chociaż mogą odgrywać kluczową rolę w tworzeniu nowego pakietu, nie powinny być traktowane jako zależność nowego pakietu po jego opublikowaniu. NuGet 2.8 umożliwia pakietowi zidentyfikowanie się w pliku nuspec jako programowaniaDependency. Po zainstalowaniu te metadane zostaną również dodane do pliku packages.config projektu, do którego zainstalowano pakiet. Gdy ten plik packages.config zostanie później przeanalizowany pod kątem zależności NuGet podczas nuget.exe pakietu, wykluczy te zależności oznaczone jako zależności programistyczne.

  • Pojedyncze pliki packages.config dla różnych platform: podczas tworzenia aplikacji dla wielu platform docelowych często mają różne pliki projektu dla każdego z odpowiednich środowisk kompilacji. Często używa się również różnych pakietów NuGet w różnych plikach projektu, ponieważ pakiety mają różne poziomy obsługi dla różnych platform. Pakiet NuGet 2.8 zapewnia ulepszoną obsługę tego scenariusza przez utworzenie różnych plików packages.config dla różnych plików projektu specyficznych dla platformy.

  • Powrót do lokalnej pamięci podręcznej: chociaż pakiety NuGet są zwykle używane z galerii zdalnej, takiej jak galeria NuGet przy użyciu połączenia sieciowego, istnieje wiele scenariuszy, w których klient nie jest połączony. Bez połączenia sieciowego klient NuGet nie mógł pomyślnie zainstalować pakietów — nawet wtedy, gdy te pakiety znajdowały się już na komputerze klienta w lokalnej pamięci podręcznej NuGet. Pakiet NuGet 2.8 dodaje automatyczny powrót pamięci podręcznej do konsoli menedżera pakietów.

    Funkcja rezerwowa pamięci podręcznej nie wymaga żadnych określonych argumentów poleceń. Ponadto rezerwa pamięci podręcznej działa obecnie tylko w konsoli menedżera pakietów — zachowanie nie działa obecnie w oknie dialogowym menedżera pakietów.

  • Poprawki błędów: Jedną z głównych poprawek błędów wprowadzonych było zwiększenie wydajności w poleceniu update-package -reinstall.

    Oprócz tych funkcji i wyżej wymienionej poprawki wydajności, ta wersja NuGet zawiera również wiele innych poprawek błędów. W wydaniu rozwiązano łącznie 181 problemów. Aby uzyskać pełną listę elementów roboczych, które zostały naprawione w programie NuGet 2.8, zobacz Narzędzie NuGet Issue Tracker dla tej wersji.

Formularze sieci Web ASP.NET

ASP.NET MVC 5.1.2

ASP.NET web API 2.1.2

ASP.NET Web Pages 3.1.2

Entity Framework 6.1

Program Entity Framework został zaktualizowany do wersji 6.1 dla środowiska uruchomieniowego i narzędzi. Program Entity Framework (EF) 6.1 jest drobną aktualizacją programu Entity Framework 6 i zawiera szereg poprawek błędów i nowych funkcji. Aby uzyskać szczegółowe informacje na temat programu EF6.1, w tym linki do dokumentacji nowych funkcji, zobacz Historia wersji programu Entity Framework. Nowe funkcje w tej wersji obejmują:

  • Konsolidacja narzędzi zapewnia spójny sposób tworzenia nowego modelu EF. Ta funkcja rozszerza kreatora modelu danych jednostek ADO.NET w celu obsługi tworzenia modeli Code First, w tym inżynierii odwrotnej z istniejącej bazy danych. Te funkcje były wcześniej dostępne w wersji beta w narzędziach EF Power Tools.
  • Obsługa błędów zatwierdzania transakcji zapewnia nowy System.Data.Entity.Infrastructure.CommitFailureHandler , który korzysta z nowo wprowadzonej możliwości przechwytywania operacji transakcji. Program CommitFailureHandler umożliwia automatyczne odzyskiwanie po awariach połączenia podczas zatwierdzania transakcji.
  • Atrybut IndexAttribute umożliwia określenie indeksów przez umieszczenie atrybutu we właściwości (lub właściwościach) w modelu Code First. Najpierw kod utworzy odpowiedni indeks w bazie danych.
  • Publiczny interfejs API mapowania zapewnia dostęp do informacji dostępnych w programie EF na temat sposobu mapowania właściwości i typów na kolumny i tabele w bazie danych. W poprzednich wersjach ten interfejs API był wewnętrzny.
  • Możliwość konfigurowania przechwytywania za pośrednictwem pliku App/Web.config (zezwalanie na dodawanie przechwytatorów bez ponownego komponowania aplikacji).
  • DatabaseLogger to nowy interceptor, który ułatwia rejestrowanie wszystkich operacji bazy danych w pliku. W połączeniu z poprzednią funkcją umożliwia to łatwe włączanie rejestrowania operacji bazy danych dla wdrożonej aplikacji bez konieczności ponownego kompilowania.
  • Ulepszono wykrywanie zmian modelu migracji, dzięki czemu migracje szkieletowe są bardziej dokładne; znacznie ulepszono wydajność procesu wykrywania zmian.
  • Ulepszenia wydajności , w tym zmniejszone operacje bazy danych podczas inicjowania, optymalizacje porównania równości wartości null w zapytaniach LINQ, szybsze generowanie widoku (tworzenie modelu) w większej fazie i wydajniejsze materializacja śledzonych jednostek z wieloma skojarzeniami.

ASP.NET Identity 2.0.0

  • Uwierzytelnianie dwuskładnikowe: usługa ASP.NET Identity obsługuje teraz uwierzytelnianie dwuskładnikowe. Uwierzytelnianie dwuskładnikowe zapewnia dodatkową warstwę zabezpieczeń dla kont użytkowników w przypadku naruszenia zabezpieczeń hasła. Istnieje również ochrona przed atakami siłowymi na dwa kody czynników.

  • Blokada konta: Umożliwia zablokowanie użytkownika w przypadku nieprawidłowego wprowadzenia hasła lub kodów dwuskładnikowych. Można skonfigurować liczbę nieprawidłowych prób i przedział czasu dla użytkowników. Deweloper może opcjonalnie wyłączyć blokadę konta dla niektórych kont użytkowników w razie potrzeby.

  • Potwierdzenie konta: System ASP.NET Identity obsługuje teraz potwierdzenie konta. Jest to dość typowy scenariusz w większości witryn internetowych, w którym po zarejestrowaniu się na nowym koncie w witrynie internetowej musisz potwierdzić swoją wiadomość e-mail, zanim będzie można zrobić wszystko w witrynie internetowej. Email Potwierdzenie jest przydatne, ponieważ uniemożliwia tworzenie fałszywych kont. Jest to bardzo przydatne, jeśli używasz poczty e-mail jako metody komunikowania się z użytkownikami witryny internetowej, takich jak witryny forum, bankowość, handel elektroniczny lub witryny sieci Web społecznościowe.

  • Resetowanie hasła: Resetowanie hasła to funkcja, w której użytkownik może zresetować swoje hasła, jeśli nie pamięta hasła.

  • Sygnatura zabezpieczeń (wyloguj się wszędzie): Obsługuje sposób ponownego generowania tokenu zabezpieczającego użytkownika w przypadkach, gdy użytkownik zmieni swoje hasło lub inne informacje związane z zabezpieczeniami, takie jak usunięcie skojarzonego logowania (np. Facebook, Google, konto Microsoft itd.). Jest to konieczne, aby upewnić się, że wszystkie tokeny wygenerowane przy użyciu starego hasła zostaną unieważnione. W przykładowym projekcie, jeśli zmienisz hasło użytkownika, zostanie wygenerowany nowy token dla użytkownika, a wszystkie poprzednie tokeny zostaną unieważnione. Ta funkcja zapewnia dodatkową warstwę zabezpieczeń aplikacji, ponieważ po zmianie hasła użytkownik zostanie wylogowany z każdego miejsca (wszystkie inne przeglądarki), w których zalogowano się do tej aplikacji.

  • Ustaw, aby typ klucza podstawowego był rozszerzalny dla użytkowników i ról: w ASP.NET Identity 1.0 typ klucza podstawowego dla tabeli Użytkownicy i role był ciągami. Oznacza to, że gdy system ASP.NET Identity został utrwalone w SQL Server przy użyciu programu Entity Framework, używaliśmy narzędzia nvarchar. Było wiele dyskusji na temat tej domyślnej implementacji w witrynie Stack Overflow i na podstawie przychodzących opinii. Udostępniliśmy punkt zaczepienia rozszerzalności, w którym można określić klucz podstawowy tabeli Użytkownicy i role. Ten punkt zaczepienia rozszerzalności jest szczególnie przydatny w przypadku migrowania aplikacji, a aplikacja przechowywała identyfikatory UserId są identyfikatorami GUID lub ints.

  • Obsługa zapytań IQueryable dla użytkowników i ról: dodano obsługę funkcji IQueryable w obszarze UsersStore i RolesStore. Listę użytkowników i ról można łatwo uzyskać.

  • Obsługa operacji usuwania za pomocą elementu UserManager

  • Indeksowanie w kolumnie UserName: w implementacji platformy Entity Framework ASP.NET Identity dodaliśmy unikatowy indeks nazwy użytkownika przy użyciu nowego atrybutu IndexAttribute w programie EF 6.1.0. Zapewnia to, że nazwy użytkowników są zawsze unikatowe i nie było warunku wyścigu, w którym można znaleźć zduplikowane nazwy użytkowników.

  • Rozszerzony moduł sprawdzania poprawności haseł: Moduł sprawdzania poprawności haseł, który został wysłany w usłudze ASP.NET Identity 1.0, był dość podstawowym modułem sprawdzania poprawności hasła, który weryfikował tylko minimalną długość. Istnieje nowy moduł sprawdzania poprawności haseł, który zapewnia większą kontrolę nad złożonością hasła. Pamiętaj, że nawet jeśli włączysz wszystkie ustawienia w tym haśle, zachęcamy do włączenia uwierzytelniania dwuskładnikowego dla kont użytkowników.

  • IdentityFactory Middleware/ CreatePerOwinContext:

    • Menedżer użytkowników: możesz użyć implementacji fabryki, aby uzyskać wystąpienie elementu UserManager z kontekstu OWIN. Ten wzorzec jest podobny do tego, co jest używane do pobierania elementu AuthenticationManager z kontekstu OWIN dla funkcji SignIn i SignOut. Jest to zalecany sposób uzyskiwania wystąpienia elementu UserManager na żądanie dla aplikacji.
    • DbContextFactory: ASP.NET Identity używa programu Entity Framework do utrwalania systemu tożsamości w SQL Server. W tym celu system tożsamości ma odwołanie do obiektu ApplicationDbContext. Oprogramowanie pośredniczące DbContextFactory zwraca wystąpienie obiektu ApplicationDbContext dla żądania, którego można użyć w aplikacji.
  • ASP.NET pakiet NuGet Identity Samples: Pakiet NuGet samples może ułatwić instalowanie i uruchamianie przykładów dla ASP.NET Identity i przestrzeganie najlepszych rozwiązań. Jest to przykładowa aplikacja MVC ASP.NET. Przed wdrożeniem go w środowisku produkcyjnym zmodyfikuj kod w taki sposób, aby odpowiadał aplikacji. Przykład powinien zostać zainstalowany w pustej aplikacji ASP.NET. Aby uzyskać więcej informacji na temat pakietu, przejdź do następującego wpisu w blogu: Ogłoszenie RTM ASP.NET Identity 2.0.0

Składniki OWIN firmy Microsoft

W tej wersji usunięto wiele usterek.

ASP.NET SignalR 2.0.2

W tej wersji usunięto wiele usterek. Aby uzyskać bardziej szczegółowe informacje , zobacz informacje o wersji 2.0.2 .