SlideShare a Scribd company logo
Tworzenie aplikacji Web przy użyciu Visual Studio 2005  i ASP.NET 2.0 Krzysztof Gawęda Tomasz Cieplak Developers Days 2005
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
ASP.NET 2.0 - Co chciano osiągnąć? Wzrost produktywności programisty Uproszczenie konserwacji i administracji rozwiązań Wzrost wydajności i skalowalności Uproszczenie sposobu tworzenia rozwiązań mobilnych
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Developer Stack   Serwisy aplikacji dostępne w  ASP.NET 2.0
Developer Stack Członkostwo Windows SQL Server Custom Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Provider Model Design Pattern Access MDB Providers Serwisy aplikacji dostępne w  ASP.NET 2.0 BETA 2
Developer Stack Serwisy aplikacji dostępne w  ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja
Developer Stack Serwisy aplikacji dostępne w  ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Cechy  ASP.NET 2.0 “Page Framework” Master Pages Tematy Interfejs użytkownika Lokalizacja
Developer Stack Cechy  ASP.NET 2.0 “Page Framework” Master Pages Tematy Interfejs użytkownika Lokalizacja Serwisy aplikacji dostępne w  ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja ASP.NET 2.0 “ Bukiecik Kontrolek ” (50+) Bezpieczeń- stwo Web Parts Dane Nawigacja
Co mamy? - Wzrost produktywności programisty Zmniejszenie ilości wprowadzanego kodu – w niektórych przypadkach o 2/3 Kod HTML wprowadzony przez programistę nie jest w żaden sposób modyfikowany przez środowisko Ułatwienie sposobu wyświetlania danych: np. kontrolki GridView, DetailsView Deklaratywne „przybijanie danych”
Co mamy? - Wzrost produktywności programisty Nie jest już konieczne FPSE do tworzenia rozwiązań. Projekt dostępny jako:  System plików Lokalizacja FTP Nie jest już wymagany IIS na maszynie deweloperskiej
Co mamy? - Uproszczenie konserwacji i administracji Nowa wtyczka do MMC ułatwiająca zarządzanie aplikacją internetową – zapomnij o wprowadzaniu zmian do plików machine.config lub web.config Nowe narzędzie konfiguracyjne Web Administration Tool Możliwość szyfrowania elementów plików konfiguracyjnych
Co mamy? - Wzrost wydajności  i skalowalności To co lubimy najbardziej – czyli cash (cache) – w połączeniu z MS SQL Server 2005 – SQL cache invalidation Wsparcie dla platformy 64-bit Kompatybilność z ASP.NET 1.0 i 1.1 <%@  outputcache duration = &quot;3600” varybyparam = &quot;ProdID” sqldependency = &quot;MyDatabase:Products” %>* * atrybut sqldependency musi wskazywać na źródło danych skonfigurowane  w pliku  web.config
Co mamy? - Dynamiczne generowanie grafiki Przetwarzanie jednego formatu graficznego w inny, rozpoznawany przez urządzenie Kontrolka  DynamicImage  stosuje serwis  Image Generation Service,  dostępny przez  .axd  uchwyt  HTTP Ładne?
Langusta To skorupiak wielkością dorównujący homarowi, ale pozbawiony szczypiec. Jadalne mięso znajduje się w odwłoku. Jest ono białe, delikatne i bardzo smaczne. Langustę przyrządza się podobnie jak homara. Homary i langusty podaje się przecięte na pół wzdłuż korpusu.
Co mamy? - Uproszczenie sposobu tworzenia rozwiązań mobilnych Plany są. Widzieliśmy je w ASP.NET 2.0 beta 1: Dynamiczne generowanie grafiki Brak odrębnych kontrolek mobilnych Nowe kontrolki PhoneCall i ContentPager W beta 2 znajdziemy… „zwrot w tył” RTM i sprawa mobilna? – kto to wie?
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy?  Nowości w ASP.NET 2.0
Nowości w ASP.NET 2.0 Atrybuty strony Zdarzenia Zarządzanie rolami i członkostwem Cross-page Posting Dostęp do danych Master Pages
Nowości w ASP.NET 2.0 c.d. Tematy, personalizacja Nawigacja Nowy system kompilacji Web Parts Kontrolki serwerowe Środowisko programistyczne
Nowości - atrybuty strony EnablePersonalization LinePragmas Master PersonalizationProvider Theme
Nowości – Architektura – cykl życia strony Constructor Construct TestDeviceFilter AddParsedSubObject DeterminePostBackMode OnPreInit LoadPersonalizationData InitializeThemes OnInit ApplyControlSkin ApplyPersonalization OnInitComplete LoadPageStateFromPersistenceMedium(PB) LoadControlState  (PB) LoadViewState (PB) ProcessPostData1 OnPreLoad OnLoad ProcessPostData2 (PB) RaiseChangedEvents  (PB) RaisePostBackEvent (PB) OnLoadComplete OnPreRender OnPreRenderComplete SavePersonalizationData SaveControlState SaveViewState SavePageStateToPersistenceMedium Render OnUnload AbortTransaction CommitTransaction PB = Post Back
Nowości – członkostwo, kontrola logowania Członkostwo pozwala na uproszczenie zadań związanych z bezpieczeństwem: CreateUser DeleteUser Kontrolki serwerowe pozwalają na obsługę następujących zdarzeń: login   loginview passwordrecovery
Nowości - „Cross-page Posting” Reguła w  ASP.NET 1.x  – formularz może przesłać dane „z powrotem” tylko do strony, która stworzyła formularz ASP.NET 2.0  pozwala na to aby formularz z jednej strony przesyłał dane do innej strony
Nowości - „Cross-page Posting” <%@ page %> <html> <head runat=&quot;server&quot;> </head> <body> <form id=&quot;form1&quot;  runat=&quot;server&quot;> <asp:TextBox ID=&quot;TextBox1&quot; Runat=&quot;server&quot;></asp:TextBox> <asp:Button ID=&quot;Button1&quot;  PostBackUrl=&quot;~/Page2.aspx“ Runat=&quot;server&quot; Text=&quot;Button&quot; /> </form> </body> </html> <!– Page2.aspx  -> void Page_Load(object sender, EventArgs e) { Label1.Text = ((TextBox) PreviousPage.FindControl (&quot;TextBox1&quot;)).Text; }
Nowości - „Przybijanie danych” ASP.NET 1.x <asp:DataGrid ID=&quot;MyDataGrid&quot; RunAt=&quot;server&quot; /> ... <script language=&quot;C#&quot; runat=&quot;server&quot;> void Page_Load (Object sender, EventArgs e) { SqlConnection connection = new SqlConnection (&quot;server=localhost;database=pubs;integrated security=true&quot;); try { connection.Open (); SqlCommand command = new SqlCommand (&quot;select title_id, titles, price from titles&quot;); MyDataGrid.DataSource = command.ExecuteReader (); MyDataGrid.DataBind (); } finally { connection.Close (); } } </script> <asp:SqlDataSource ID=&quot;Titles&quot; RunAt=&quot;server&quot; ConnectionString=&quot;server=localhost;database=pubs;integrated security=true&quot; SelectCommand=&quot;select title_id, title, price from titles&quot; /> <asp:DataGrid DataSourceID=&quot;Titles&quot; RunAt=&quot;server&quot; /> ASP.NET 2.0
Nowości - „ Master Pages ” Umożliwia stworzenie projektu „strony bazowej” Plik  .master  zawiera szablon wykorzystywany przez wszystkie strony aplikacji Inne strony zawierają się jako kontrolki  w stronie „Master Page” VS.NET 2005 umożliwia projektowanie „strony bazowej”
Nowości - Tematy Umożliwia na ustawienie domyślnych właściwości dla kontrolek serwerowych Pliki (.skin) tematów umieszczane są  w katalogu  Themes Strona posiada właściwość Theme Właściwość Theme może być zmieniana  w kodzie
Kontrolki nawigacyjne Zastosowanie dostawcy Domyślnie dostawca ładuje plik o nazwie  web.sitemap Dostawca może być stosowany do wypełnienia kontrolek  Menu  i  Navigation <siteMap> <siteMapNode title=&quot;Home&quot; url=&quot;default.aspx&quot;> <siteMapNode title=&quot;Tab1&quot; url=&quot;subdir/default.aspx&quot;> <siteMapNode title=&quot;SubPage&quot;  url=&quot;subdir/foo.aspx&quot; /> </siteMapNode> <siteMapNode title=&quot;Tab2&quot; url=&quot;Tab/default.aspx&quot;> <siteMapNode title=&quot;SubPage&quot; url=&quot;Tab/foo.aspx“/> </siteMapNode> </siteMapNode> </siteMap>
Web Parts Pozwala na edycje układu elementów strony ( a la SharePoint ) Zastosowanie  ContentWebPart, User Control  lub  Custom Controls WebPartManager  decyduje w jaki sposób  Web Parts  mogą być przemieszczane na stronie
Nowości -  Model  kompilacji Nowa struktura katalogów aplikacji App_Browsers App_Code App_Data App_GlobalResource App_LocalResources App_Themes App_WebReferences Bin
Nowości -  Model  kompilacji strony Wykorzystywana koncepcja z CLR 2.0 „partial code” i „code-behind” kompilacji do jednego pliku Pliki .aspx oraz plik „code-behind” mogą być kompilowane do jednej prekompilowanej klasy (bazowa klasa strony) Stary model (ASP.NET 1.x) kompilacji wciąż wspierany
Nowości -  Model  kompilacji aplikacji Cała aplikacja może być prekompilowana aspnet_compiler –v /WebApp c:\web\WebApp lub w przeglądarce  url + /precompile.axd
DEMO
Podsumowanie Nowe cechy ułatwiające wykonywanie powtarzających się zadań programistycznych (SmartTasks) Nowy model pozwalający na skalowalność rozwiązań Nowy model kompilacji stron i aplikacji Nowe cechy środowiska programistycznego pozwalające na łatwiejsze tworzenie aplikacji internetowych (IntelliSense w plikach .aspx) BETA
Ciekawostki Lista serwerów hostujących ASP.NET 2.0 beta 2  http://msdn.microsoft.com/asp.net/beta2/hosters/ Lista zmian wprowadzonych w ASP.NET 2.0 beta 2 http://msdn.microsoft.com/asp.net/beta2/beta2changes.aspx http://msdn.microsoft.com/asp.net/beta2/beta2update.aspx Interfejs użytkownika  http://msdn.microsoft.com/asp.net/beta2/ui/default.aspx Dostęp do danych   http://msdn.microsoft.com/asp.net/beta2/data/default.aspx Infrastruktura  http://msdn.microsoft.com/asp.net/beta2/infrastructure/default.aspx Migracja  http://msdn.microsoft.com/asp.net/beta2/migrating/default.aspx Bezpieczeństwo  http://msdn.microsoft.com/asp.net/beta2/security/default.aspx
Dziękujemy za uwagę! „ Dzisiaj nigdzie nie idziemy!” Tomasz Cieplak [email_address] Krzysztof Gawęda [email_address]
Zmiany pliku web.config <configuration> <connectionStrings> <add name=&quot;Northwind&quot; connectionString=&quot;server=localhost; database=Northwind; uid=sa ; pwd= &quot; password&quot; /> </connectionStrings> <system.web> <caching> < sqlCacheDependency enabled=&quot;true&quot; > <databases> < add name=&quot;MyDatabase &quot; connectionStringName=&quot;Northwind&quot; pollTime=&quot;500&quot; /> </databases> </sqlCacheDependency> </caching> </system.web> </configuration>

More Related Content

PPT
Poland- Smart Client Technology - MTS 2005
Tomasz Cieplak
 
PPT
Seminarium .Net CF 2004
Tomasz Cieplak
 
PPT
Zagadnienia Egzaminacyjne
Tomasz Cieplak
 
PPT
Seminarium - Tworzenie Aplikacji Mobilnych 2004
Tomasz Cieplak
 
PPT
Developers Club 2003
Tomasz Cieplak
 
PDF
The Six Highest Performing B2B Blog Post Formats
Barry Feldman
 
PDF
The Outcome Economy
Helge Tennø
 
PPT
WiX Poznańska Grupa DotNet
guest2e88cb
 
Poland- Smart Client Technology - MTS 2005
Tomasz Cieplak
 
Seminarium .Net CF 2004
Tomasz Cieplak
 
Zagadnienia Egzaminacyjne
Tomasz Cieplak
 
Seminarium - Tworzenie Aplikacji Mobilnych 2004
Tomasz Cieplak
 
Developers Club 2003
Tomasz Cieplak
 
The Six Highest Performing B2B Blog Post Formats
Barry Feldman
 
The Outcome Economy
Helge Tennø
 
WiX Poznańska Grupa DotNet
guest2e88cb
 

Similar to Poland - Dev Days 2005 (20)

PPT
Extjs & netzke
GaldoMedia
 
ODP
Czym Jest Web 2.0?
Przemek Łącki
 
PPTX
Wprowadzenie do HTTP/2
Gabor Wnuk
 
PDF
PSD2WP: kodowanie dedykowanych motywów dla WordPressa w modelu komponentowym
Krzysztof Łęcki
 
PPT
Migracja I Integracja Bazy
Przemysław ...
 
PDF
Lets Flex the WEB 4
MediaFrame
 
PDF
ASP.NET 2.0. Gotowe rozwiązania
Wydawnictwo Helion
 
PDF
ASP.NET. Vademecum profesjonalisty
Wydawnictwo Helion
 
PPTX
Programowanie aplikacji dla Windows 8 (WinRT)
Bartlomiej Zass
 
PDF
ASP.NET 2.0. Księga eksperta
Wydawnictwo Helion
 
PDF
ASP.NET 2.0. Projektowanie aplikacji internetowych
Wydawnictwo Helion
 
PDF
Wprowadzenie do WP-API
Tomasz Dziuda
 
PPTX
Aplikacje internetowe real-time w oparciu o React/Redux
Dawid Rusnak
 
PPTX
Joomla Day Poland 15 - Docker
Lukas Lesniewski
 
PDF
Praca Dyplomowa
Jacek Kościesza
 
PDF
Praca Dyplomowa
Jacek Kościesza
 
PPTX
Wydajny frontend 2023
Bartłomiej Miś
 
PDF
Visual C# 2008. Projektowanie aplikacji. Pierwsze starcie
Wydawnictwo Helion
 
PDF
Apache http server - proste i zaawansowane przypadki użycia
Wojciech Lichota
 
PDF
Feo w-joomla
Dominik Kucharski
 
Extjs & netzke
GaldoMedia
 
Czym Jest Web 2.0?
Przemek Łącki
 
Wprowadzenie do HTTP/2
Gabor Wnuk
 
PSD2WP: kodowanie dedykowanych motywów dla WordPressa w modelu komponentowym
Krzysztof Łęcki
 
Migracja I Integracja Bazy
Przemysław ...
 
Lets Flex the WEB 4
MediaFrame
 
ASP.NET 2.0. Gotowe rozwiązania
Wydawnictwo Helion
 
ASP.NET. Vademecum profesjonalisty
Wydawnictwo Helion
 
Programowanie aplikacji dla Windows 8 (WinRT)
Bartlomiej Zass
 
ASP.NET 2.0. Księga eksperta
Wydawnictwo Helion
 
ASP.NET 2.0. Projektowanie aplikacji internetowych
Wydawnictwo Helion
 
Wprowadzenie do WP-API
Tomasz Dziuda
 
Aplikacje internetowe real-time w oparciu o React/Redux
Dawid Rusnak
 
Joomla Day Poland 15 - Docker
Lukas Lesniewski
 
Praca Dyplomowa
Jacek Kościesza
 
Praca Dyplomowa
Jacek Kościesza
 
Wydajny frontend 2023
Bartłomiej Miś
 
Visual C# 2008. Projektowanie aplikacji. Pierwsze starcie
Wydawnictwo Helion
 
Apache http server - proste i zaawansowane przypadki użycia
Wojciech Lichota
 
Feo w-joomla
Dominik Kucharski
 
Ad

Poland - Dev Days 2005

  • 1. Tworzenie aplikacji Web przy użyciu Visual Studio 2005 i ASP.NET 2.0 Krzysztof Gawęda Tomasz Cieplak Developers Days 2005
  • 2. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 3. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 4. ASP.NET 2.0 - Co chciano osiągnąć? Wzrost produktywności programisty Uproszczenie konserwacji i administracji rozwiązań Wzrost wydajności i skalowalności Uproszczenie sposobu tworzenia rozwiązań mobilnych
  • 5. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 6. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 7. Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Developer Stack Serwisy aplikacji dostępne w ASP.NET 2.0
  • 8. Developer Stack Członkostwo Windows SQL Server Custom Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Provider Model Design Pattern Access MDB Providers Serwisy aplikacji dostępne w ASP.NET 2.0 BETA 2
  • 9. Developer Stack Serwisy aplikacji dostępne w ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja
  • 10. Developer Stack Serwisy aplikacji dostępne w ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja Cechy ASP.NET 2.0 “Page Framework” Master Pages Tematy Interfejs użytkownika Lokalizacja
  • 11. Developer Stack Cechy ASP.NET 2.0 “Page Framework” Master Pages Tematy Interfejs użytkownika Lokalizacja Serwisy aplikacji dostępne w ASP.NET 2.0 Członkostwo Zarządzanie rolami Personalizacja Nawigacja Buforowanie danych Konserwacja ASP.NET 2.0 “ Bukiecik Kontrolek ” (50+) Bezpieczeń- stwo Web Parts Dane Nawigacja
  • 12. Co mamy? - Wzrost produktywności programisty Zmniejszenie ilości wprowadzanego kodu – w niektórych przypadkach o 2/3 Kod HTML wprowadzony przez programistę nie jest w żaden sposób modyfikowany przez środowisko Ułatwienie sposobu wyświetlania danych: np. kontrolki GridView, DetailsView Deklaratywne „przybijanie danych”
  • 13. Co mamy? - Wzrost produktywności programisty Nie jest już konieczne FPSE do tworzenia rozwiązań. Projekt dostępny jako: System plików Lokalizacja FTP Nie jest już wymagany IIS na maszynie deweloperskiej
  • 14. Co mamy? - Uproszczenie konserwacji i administracji Nowa wtyczka do MMC ułatwiająca zarządzanie aplikacją internetową – zapomnij o wprowadzaniu zmian do plików machine.config lub web.config Nowe narzędzie konfiguracyjne Web Administration Tool Możliwość szyfrowania elementów plików konfiguracyjnych
  • 15. Co mamy? - Wzrost wydajności i skalowalności To co lubimy najbardziej – czyli cash (cache) – w połączeniu z MS SQL Server 2005 – SQL cache invalidation Wsparcie dla platformy 64-bit Kompatybilność z ASP.NET 1.0 i 1.1 <%@ outputcache duration = &quot;3600” varybyparam = &quot;ProdID” sqldependency = &quot;MyDatabase:Products” %>* * atrybut sqldependency musi wskazywać na źródło danych skonfigurowane w pliku web.config
  • 16. Co mamy? - Dynamiczne generowanie grafiki Przetwarzanie jednego formatu graficznego w inny, rozpoznawany przez urządzenie Kontrolka DynamicImage stosuje serwis Image Generation Service, dostępny przez .axd uchwyt HTTP Ładne?
  • 17. Langusta To skorupiak wielkością dorównujący homarowi, ale pozbawiony szczypiec. Jadalne mięso znajduje się w odwłoku. Jest ono białe, delikatne i bardzo smaczne. Langustę przyrządza się podobnie jak homara. Homary i langusty podaje się przecięte na pół wzdłuż korpusu.
  • 18. Co mamy? - Uproszczenie sposobu tworzenia rozwiązań mobilnych Plany są. Widzieliśmy je w ASP.NET 2.0 beta 1: Dynamiczne generowanie grafiki Brak odrębnych kontrolek mobilnych Nowe kontrolki PhoneCall i ContentPager W beta 2 znajdziemy… „zwrot w tył” RTM i sprawa mobilna? – kto to wie?
  • 19. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 20. Agenda ASP.NET 2.0 - Co chciano osiągnąć? ASP.NET 2.0 - Co mamy? Nowości w ASP.NET 2.0
  • 21. Nowości w ASP.NET 2.0 Atrybuty strony Zdarzenia Zarządzanie rolami i członkostwem Cross-page Posting Dostęp do danych Master Pages
  • 22. Nowości w ASP.NET 2.0 c.d. Tematy, personalizacja Nawigacja Nowy system kompilacji Web Parts Kontrolki serwerowe Środowisko programistyczne
  • 23. Nowości - atrybuty strony EnablePersonalization LinePragmas Master PersonalizationProvider Theme
  • 24. Nowości – Architektura – cykl życia strony Constructor Construct TestDeviceFilter AddParsedSubObject DeterminePostBackMode OnPreInit LoadPersonalizationData InitializeThemes OnInit ApplyControlSkin ApplyPersonalization OnInitComplete LoadPageStateFromPersistenceMedium(PB) LoadControlState (PB) LoadViewState (PB) ProcessPostData1 OnPreLoad OnLoad ProcessPostData2 (PB) RaiseChangedEvents (PB) RaisePostBackEvent (PB) OnLoadComplete OnPreRender OnPreRenderComplete SavePersonalizationData SaveControlState SaveViewState SavePageStateToPersistenceMedium Render OnUnload AbortTransaction CommitTransaction PB = Post Back
  • 25. Nowości – członkostwo, kontrola logowania Członkostwo pozwala na uproszczenie zadań związanych z bezpieczeństwem: CreateUser DeleteUser Kontrolki serwerowe pozwalają na obsługę następujących zdarzeń: login loginview passwordrecovery
  • 26. Nowości - „Cross-page Posting” Reguła w ASP.NET 1.x – formularz może przesłać dane „z powrotem” tylko do strony, która stworzyła formularz ASP.NET 2.0 pozwala na to aby formularz z jednej strony przesyłał dane do innej strony
  • 27. Nowości - „Cross-page Posting” <%@ page %> <html> <head runat=&quot;server&quot;> </head> <body> <form id=&quot;form1&quot; runat=&quot;server&quot;> <asp:TextBox ID=&quot;TextBox1&quot; Runat=&quot;server&quot;></asp:TextBox> <asp:Button ID=&quot;Button1&quot; PostBackUrl=&quot;~/Page2.aspx“ Runat=&quot;server&quot; Text=&quot;Button&quot; /> </form> </body> </html> <!– Page2.aspx -> void Page_Load(object sender, EventArgs e) { Label1.Text = ((TextBox) PreviousPage.FindControl (&quot;TextBox1&quot;)).Text; }
  • 28. Nowości - „Przybijanie danych” ASP.NET 1.x <asp:DataGrid ID=&quot;MyDataGrid&quot; RunAt=&quot;server&quot; /> ... <script language=&quot;C#&quot; runat=&quot;server&quot;> void Page_Load (Object sender, EventArgs e) { SqlConnection connection = new SqlConnection (&quot;server=localhost;database=pubs;integrated security=true&quot;); try { connection.Open (); SqlCommand command = new SqlCommand (&quot;select title_id, titles, price from titles&quot;); MyDataGrid.DataSource = command.ExecuteReader (); MyDataGrid.DataBind (); } finally { connection.Close (); } } </script> <asp:SqlDataSource ID=&quot;Titles&quot; RunAt=&quot;server&quot; ConnectionString=&quot;server=localhost;database=pubs;integrated security=true&quot; SelectCommand=&quot;select title_id, title, price from titles&quot; /> <asp:DataGrid DataSourceID=&quot;Titles&quot; RunAt=&quot;server&quot; /> ASP.NET 2.0
  • 29. Nowości - „ Master Pages ” Umożliwia stworzenie projektu „strony bazowej” Plik .master zawiera szablon wykorzystywany przez wszystkie strony aplikacji Inne strony zawierają się jako kontrolki w stronie „Master Page” VS.NET 2005 umożliwia projektowanie „strony bazowej”
  • 30. Nowości - Tematy Umożliwia na ustawienie domyślnych właściwości dla kontrolek serwerowych Pliki (.skin) tematów umieszczane są w katalogu Themes Strona posiada właściwość Theme Właściwość Theme może być zmieniana w kodzie
  • 31. Kontrolki nawigacyjne Zastosowanie dostawcy Domyślnie dostawca ładuje plik o nazwie web.sitemap Dostawca może być stosowany do wypełnienia kontrolek Menu i Navigation <siteMap> <siteMapNode title=&quot;Home&quot; url=&quot;default.aspx&quot;> <siteMapNode title=&quot;Tab1&quot; url=&quot;subdir/default.aspx&quot;> <siteMapNode title=&quot;SubPage&quot; url=&quot;subdir/foo.aspx&quot; /> </siteMapNode> <siteMapNode title=&quot;Tab2&quot; url=&quot;Tab/default.aspx&quot;> <siteMapNode title=&quot;SubPage&quot; url=&quot;Tab/foo.aspx“/> </siteMapNode> </siteMapNode> </siteMap>
  • 32. Web Parts Pozwala na edycje układu elementów strony ( a la SharePoint ) Zastosowanie ContentWebPart, User Control lub Custom Controls WebPartManager decyduje w jaki sposób Web Parts mogą być przemieszczane na stronie
  • 33. Nowości - Model kompilacji Nowa struktura katalogów aplikacji App_Browsers App_Code App_Data App_GlobalResource App_LocalResources App_Themes App_WebReferences Bin
  • 34. Nowości - Model kompilacji strony Wykorzystywana koncepcja z CLR 2.0 „partial code” i „code-behind” kompilacji do jednego pliku Pliki .aspx oraz plik „code-behind” mogą być kompilowane do jednej prekompilowanej klasy (bazowa klasa strony) Stary model (ASP.NET 1.x) kompilacji wciąż wspierany
  • 35. Nowości - Model kompilacji aplikacji Cała aplikacja może być prekompilowana aspnet_compiler –v /WebApp c:\web\WebApp lub w przeglądarce url + /precompile.axd
  • 36. DEMO
  • 37. Podsumowanie Nowe cechy ułatwiające wykonywanie powtarzających się zadań programistycznych (SmartTasks) Nowy model pozwalający na skalowalność rozwiązań Nowy model kompilacji stron i aplikacji Nowe cechy środowiska programistycznego pozwalające na łatwiejsze tworzenie aplikacji internetowych (IntelliSense w plikach .aspx) BETA
  • 38. Ciekawostki Lista serwerów hostujących ASP.NET 2.0 beta 2 http://msdn.microsoft.com/asp.net/beta2/hosters/ Lista zmian wprowadzonych w ASP.NET 2.0 beta 2 http://msdn.microsoft.com/asp.net/beta2/beta2changes.aspx http://msdn.microsoft.com/asp.net/beta2/beta2update.aspx Interfejs użytkownika http://msdn.microsoft.com/asp.net/beta2/ui/default.aspx Dostęp do danych http://msdn.microsoft.com/asp.net/beta2/data/default.aspx Infrastruktura http://msdn.microsoft.com/asp.net/beta2/infrastructure/default.aspx Migracja http://msdn.microsoft.com/asp.net/beta2/migrating/default.aspx Bezpieczeństwo http://msdn.microsoft.com/asp.net/beta2/security/default.aspx
  • 39. Dziękujemy za uwagę! „ Dzisiaj nigdzie nie idziemy!” Tomasz Cieplak [email_address] Krzysztof Gawęda [email_address]
  • 40. Zmiany pliku web.config <configuration> <connectionStrings> <add name=&quot;Northwind&quot; connectionString=&quot;server=localhost; database=Northwind; uid=sa ; pwd= &quot; password&quot; /> </connectionStrings> <system.web> <caching> < sqlCacheDependency enabled=&quot;true&quot; > <databases> < add name=&quot;MyDatabase &quot; connectionStringName=&quot;Northwind&quot; pollTime=&quot;500&quot; /> </databases> </sqlCacheDependency> </caching> </system.web> </configuration>