Udostępnij za pośrednictwem


Integracja buforowania platformy ASP.NET

W przykładzie AspNet Buforowanie Integration pokazano, jak korzystać z pamięci podręcznej danych wyjściowych ASP.NET z modelem programowania HTTP internetowym WCF. Ten temat koncentruje się na ASP.NET funkcji integracji wyjściowej pamięci podręcznej.

Demonstracje

Integracja z pamięcią podręczną danych wyjściowych ASP.NET.

Dyskusja

W przykładzie użyto elementu AspNetCacheProfileAttribute do korzystania z buforowania danych wyjściowych ASP.NET z usługą Windows Communication Foundation (WCF). Element AspNetCacheProfileAttribute jest stosowany do operacji usługi i zawiera nazwę profilu pamięci podręcznej w pliku konfiguracji, który należy zastosować do odpowiedzi z danej operacji.

W pliku Service.cs przykładowego projektu usługi operacje GetCustomer i GetCustomers są oznaczone symbolem AspNetCacheProfileAttribute, który zawiera nazwę profilu pamięci podręcznej "CacheFor60Seconds". W pliku Web.config projektu usługi profil pamięci podręcznej "CacheFor60Seconds" jest udostępniany w <caching> elemecie .<system.web> W przypadku tego profilu pamięci podręcznej wartość atrybutu duration to "60", więc odpowiedzi skojarzone z tym profilem są buforowane w pamięci podręcznej danych wyjściowych ASP.NET przez 60 sekund. Ponadto dla tego profilu pamięci podręcznej atrybut jest ustawiony na "format", varmByParam więc żądania z różnymi wartościami parametru format ciągu zapytania mają buforowane oddzielnie odpowiedzi. Na koniec atrybut profilu varyByHeader pamięci podręcznej jest ustawiony na wartość "Akceptuj", więc żądania z różnymi wartościami nagłówka Accept mają buforowane oddzielnie odpowiedzi.

Program.cs w projekcie Client pokazuje, jak taki klient może być utworzony przy użyciu programu HttpWebRequest. Należy pamiętać, że jest to tylko jeden sposób uzyskiwania dostępu do usługi WCF. Istnieje również możliwość uzyskania dostępu do usługi przy użyciu innych klas programu .NET Framework, takich jak fabryka kanałów WCF i WebClient. Inne przykłady w zestawie SDK (takie jak przykład podstawowa usługa HTTP) ilustrują sposób używania tych klas do komunikowania się z usługą WCF.

Aby uruchomić przykład

Przykład składa się z trzech projektów:

  • Usługa: projekt aplikacji internetowej, który zawiera usługę HTTP WCF hostowaną w ASP.NET.

  • Klient: projekt aplikacji konsolowej, który wykonuje wywołania usługi.

  • Wspólne: biblioteka udostępniona zawierająca typ klienta używany przez klienta i usługę.

Gdy aplikacja konsolowa klienta jest uruchamiana, klient wysyła żądania do usługi i zapisuje odpowiednie informacje z odpowiedzi do okna konsoli.

Aby uruchomić przykład

  1. Otwórz rozwiązanie przykładu integracji ASP.NET Buforowanie.

  2. Naciśnij klawisze Ctrl+Shift+B, aby skompilować rozwiązanie.

  3. Jeśli okno Eksplorator rozwiązań nie jest jeszcze otwarte, naciśnij klawisze CTRL+W+S.

  4. W oknie Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt Usługi i wybierz polecenie Uruchom nowe wystąpienie. Spowoduje to uruchomienie ASP.NET serwera programistycznego, który hostuje usługę.

  5. W oknie Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt Klient i wybierz polecenie Uruchom nowe wystąpienie.

  6. Zostanie wyświetlone okno konsoli klienta i zostanie wyświetlony identyfikator URI uruchomionej usługi oraz identyfikator URI strony pomocy HTML dla uruchomionej usługi. W dowolnym momencie możesz wyświetlić stronę pomocy HTML, wpisując identyfikator URI strony pomocy w przeglądarce.

  7. Podczas uruchamiania przykładu klient zapisuje stan bieżącego działania.

  8. Naciśnij dowolny klawisz, aby zakończyć działanie aplikacji konsolowej klienta.

  9. Naciśnij klawisze SHIFT+F5, aby zatrzymać debugowanie usługi.

  10. W obszarze powiadomień systemu Windows kliknij prawym przyciskiem myszy ikonę serwera deweloperów ASP.NET i wybierz pozycję Zatrzymaj.