1 / 69

Technologia ASP.NET

Technologia ASP.NET. Zalety ASP.NET (ASPX). Kodowanie po stronie serwera Skrypty działające po stronie klienta Kompilacja kodu zapewniająca bezpieczeństwo i skalowalność. Kontrolki serwera. Pełnią podobne zadania jak kontrolki HTML

Download Presentation

Technologia ASP.NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Technologia ASP.NET

  2. Zalety ASP.NET (ASPX) • Kodowanie po stronie serwera • Skrypty działające po stronie klienta • Kompilacja kodu zapewniająca bezpieczeństwo i skalowalność

  3. Kontrolki serwera • Pełnią podobne zadania jak kontrolki HTML • Wykonywane są jednak po stronie serwera co eliminuje problemy niezgodności z przeglądarkami internetowymi

  4. Tworzenie nowej prostej aplikacji

  5. Zmieniamy nazwę strony startowej

  6. Kontrolka i jej obsługa

  7. Struktura aplikacji • Pliki z rozszerzeniem aspx są projektami stron zawierającymi odwołania do plików z kodem wykonywanym w tle (Code Behind) • Aplikacja generuje stronę wysyłaną do klienta w kodzie html

  8. Uruchamianie w w trybie debuggowania

  9. Źródło strony dla klienta

  10. Składniki aplikacji – strona startowa aspx

  11. Strona startowa - źródło

  12. Kod aplikacji wykonywany w tle – ***.aspx.cs

  13. Pozostałe składniki • Skompilowany kod aplikacji ***.dll • DLL (z ang. Dynamic Link Library lub Dynamic Linked Library - biblioteka łączona dynamicznie) - w środowisku Windows biblioteka współdzielona (z ang. shared library), która przechowuje implementacje różnych funkcji (podprogramów) programu i/lub zasoby programu. Biblioteka DLL sama nie może wywoływać swoich funkcji (wykorzystywać zasobów w niej zawartych), może to zrobić jedynie program EXE.

  14. Pozostałe składniki • Plik konfiguracyjny Web.config • Inne pliki projektu nie wymagane do uruchomienia aplikacji

  15. Wygenerowanie aplikacji wymaga uruchomienia serwera IIS • Serwis Internet Information Services – IIS jest składnikiem systemu Windows ale musi być specjalnie zainstalowany • Jeżeli nie zmieniono ustawień IIS jego macierzystym katalogiem jest C:\Inetpub\wwwroot • Strona startowa aplikacji musi być umieszczona w katalogu macierzystym lub w podkatalogu z nazwą aplikacji

  16. Zasoby niezbędne do uruchomienia • Strona startowa ***.aspx • Plik ***.dll zawierający wszystkie pliki niezbędne do uruchomienia aplikacji • Składniki te mogą być umieszczone w rzeczywistym katalogu w ścieżce c:\Inetpub\wwwroot • lub w katalogu wirtualnym

  17. Uruchamianie aplikacji z rzeczywistego katalogu • W katalogu c:\Inetpub\wwwroot tworzymy katalog DzienDobry i umieszczamy w nim plik Start.aspx

  18. Budujemy aplikację (Build) i publikujemy ją w katalogu macierzystym

  19. Uruchamiamy aplikację z adresu localhost

  20. Tworzenie katalogu wirtualnego • Przed utworzeniem pliku dll ustawiamy serwer we właściwościach aplikacji na serwerze IIS • Następnie tworzymy katalog wirtualny (Create Virtual Directory) • Konfigurujemy IIS (Panel sterowania -> Narzędzia administracyjne -> Internetowe usługi informacyjne)

  21. Właściwości aplikacji

  22. Konfigurowanie IIS

  23. Konfigurowanie IIS - cd

  24. Aplikacja jest uruchamiana z katalogu wirtualnego

  25. Składniki niezbędne do uruchomienia aplikacji z dowolnego serwera • Na komputerze musi funkcjonować odpowiednio skonfigurowany serwer IIS • W przypadku katalogu rzeczywistego - w katalogu macierzystym IIS w podkatalogu bin musi być zapisany plik dll i w miejscu wywoływania z localhost plik startowy aspx • W przypadku katalogu wirtualnego katalog aplikacji w miejscu skoordynowanym z adresem tego katalogu • środowisko .NETFramework

  26. Łączenie aplikacji internetowych z bazą danych • W trybie debuggowania aplikacje webowe łączą się z bazą danych podobnie jak aplikacje windowsowe • Aplikacja webowa uruchamiana z sieci jest widziana przez serwer baz danych jako użytkownik ASPNET • Jeżeli w serwerze taki użytkownik nie jest widoczny to należy go uaktywnić

  27. Tworzenie nowego użytkownika w SQL MS Express

  28. Uprawnienia ASPNET • Utworzony użytkownik ASPNET nie ma żadnych uprawnień • Nie można uprawnień nadać programowo, gdyż użytkownik sam sobie uprawnień nie może nadać • Uprawnienia może nadać właściciel bazy danych

  29. Próba połączenia z bazą danych bez odpowiednich uprawnień

  30. Nadawanie uprawnień przy pomocy EnterpriseManager

  31. Nadawanie uprawnień w SQL GRANT SELECT ON [dbo].[Studenci] TO [ASPNET]

  32. GridView w aplikacji webowej

  33. Kod wykonywany w tle using System.Data; using System.Data.SqlClient; namespace Baza { public partial class _Default : System.Web.UI.Page { DataSet Studia = new DataSet(); DataTable Studenci = new DataTable(); protected void Page_Load(object sender, EventArgs e) { SqlDataAdapter Adapter = new SqlDataAdapter ("Select * From Studenci", "Data Source=STACJONARNY\\SQLEXPRESS;Integrated Security=True;Initial Catalog=Test"); Studia.Tables.Add(Studenci); Studia.Clear(); Adapter.Fill(Studia, "Studenci"); }

  34. Kod wykonywany w tle - cd protected void Button1_Click(object sender, EventArgs e) { GridView1.DataSource = Studia.Tables["Studenci"]; GridView1.DataBind(); }

  35. Tryb debugg

  36. Aplikacja w sieci lokalnej

  37. Przesyłanie danych pomiędzy klientem i serwerem • Do dynamicznego umieszczania na stronie klienta danych służy obiekt Response • Metoda Write obiektu Response umieszcza łańcuch w dokumencie użytkownika

  38. Wykorzystanie obiektu Response do odczytu danych z bazy

  39. Kod wykonywany w tle DataSet Studia = new DataSet(); DataTable Studenci = new DataTable(); protected void Page_Load(object sender, EventArgs e) { SqlDataAdapter Adapter = new SqlDataAdapter ("Select * From Studenci", "Data Source=STACJONARNY\\SQLEXPRESS;Integrated Security=True;Initial Catalog=Test"); Studia.Tables.Add(Studenci); Studia.Clear(); Adapter.Fill(Studia, "Studenci"); }

  40. Kod wykonywany w tle protected void Button2_Click(object sender, EventArgs e) { int i =1; foreach(DataRow _r in Studia.Tables["Studenci"].Rows) { Response.Write(i.ToString() + ". "); Response.Write(_r["Imie"].ToString().Trim() + " "); Response.Write(_r["Nazwisko"].ToString().Trim()); Response.Write("<BR>"); i++; } }

  41. Wynik

  42. Strona wysłana do klienta

  43. Umieszczanie ciasteczek na dysku klienta • Ciasteczka (ang. cookies) to niewielkie informacje tekstowe, wysyłane przez serwer WWW i zapisywane po stronie użytkownika (zazwyczaj na twardym dysku). Domyślne parametry ciasteczek pozwalają na odczytanie informacji w nich zawartych jedynie serwerowi, który je utworzył. Ciasteczka są stosowane najczęściej w przypadku liczników, sond, sklepów internetowych czy stron wymagających logowania.

  44. Wykorzystanie polecenia Response i Request • Klienci zapisani są w bazie Test w tabeli Klienci z autonumerowanym indeksem • Każdemu nowemu klientowi wysyłamy ciasteczko z jego identyfikatorem • W momencie żądania strony sprawdzamy czy klient miał wysłane ciasteczko

  45. Projekt i źródło strony startowej

  46. Kod w tle dla ładowania strony Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim Ide As String LadujKlientow() Try Ide = Request.Cookies("Klient")("Identyfikator").ToString() Catch Nowy = False Response.Write("Jesteś nowym klientem!") Response.Write("<BR>") Response.Write("Podaj nazwę i adres.") Response.Write("<BR>") End Try

More Related