Podpora SQL Server 2008
První očekávanou novinkou je oficiální podpora nadcházejícího
Microsoft SQL Server 2008. Dosud nové Visual Studio umělo pracovat pouze z verzí 2005 a testovací podpora pro verzi 2008 se musela ručně
doinstalovávat.
Samozřejmostí jsou aktualizované objekty pro práci s databází, které podporují nové datové typy SQL Server 2008.
Nové projekty
Ponovu také obsahuje přímou podporu projektů pro IIS 7 Managed Module a IIS 7 Handler, které přišly na svět spolu s Windows Vista a Windows Server 2008. IIS7 Managed Module sémanticky odpovídá ISAPI filtrům v předchozích verzích, může mít na starosti například autentizaci příchozích požadavků. Jak už název napovídá, implementuje se pomocí .NET třídy. IIS7 Handler je podobný ISAPI rozšířením z verze 6 a zajišťuje podporu dalším typům obsahu (například pro PHP). Obojí bylo samozřejmě možné vyvíjet už dříve, nejednalo se však o speciální typ projektu, který vývojové prostředí předpřipravil.
Podobně přibyl projekt pro vytváření Web Sites a Web Applications využívající novinku .NET 3.5 SP1, technologii .NET Dynamic Data technologii, která umožňuje automatické generování uživatelského rozhraní na základě schématu databáze a objektových modulů Entity Framework.
TODO komentáře
Pokud programujete ve Visual C#, možná jste již použili možnost uvádět v kódu tzv.
TODO komentáře, které Visual Studio automaticky zobrazovalo v seznamu nazvaném Task List (menu View). Doposud Visual Studio zobrazovalo v seznamu pouze položky, které našlo v otevřených souborech. Nově se budou zobrazovat všechny položky z celého solution.
TODO komentář má následující podobu.
// TODO Fix this function.
V Task List (menu View) pak zvolte v Categories položku Comments.
Novinky v AJAXu
Do produkční verze se také přesouvají některé funkčnosti z projektu
ASP.NET Futures. Jmenovitě například integrace s tlačítky Zpět a Vpřed a související podporu správy historie, jak na straně klienta, tak na straně serveru. Přechod mezi stránkami se realizuje pomocí ukládání a obnovování stavů aplikace. Použití pravděpodobně vyjasní následující ukázkový příklad (
zdroj).
<script runat="server">
..
// Handle the Navigate event and set data. This is raised when URL data is available.
public void OnNavigate(object sender, HistoryEventArgs args) {
l.Text = (args.State.ContainsKey(PageStateKey)) ? args.State[PageStateKey].ToString() :
String.Empty;
}
// On button click, handle the event in server code and set a history
// point, passing some state to recreate the page during navigation.
public void ButtonClick(object sender, EventArgs args) {
int state = int.Parse(((Button)sender).Text, CultureInfo.InvariantCulture);
l.Text = state.ToString();
History1.AddHistoryPoint(PageStateKey, state);
}
</script>
..
<asp:History runat="server" ID="History1" OnNavigate="OnNavigate" />
URL Routing
Zajímavou novinkou, která se pravděpodobně bude hodit na spoustu projektů a mnozí si podobnou funkcionalitu doprogramovávají sami, je
URL Routing.
Představení URL Routingu najdete například v článku Ondřeje Štastného.
ClickOnce
V design módu si můžete nastavit upravení položek Start Menu při instalaci aplikace distribuované technologií ClickOnce. Instalace také umožňuje upravovat vzhled a odkazy na web technické podpory v chybových dialozích.
Shrnutí
Nový Service Pack přinesl několik zajímavých technologií, které vývojářům zpříjemní práci. Bohužel však stále nepřináší podporu pro nové uživatelské rozhraní Windows Vista a XP (například TaskDialog, CommandLink, SplitButtons, Progressive Disclosure Controls apod.). Snad se dočkáme příště a zatím si budeme užívat nových vlastností, například URL Routingu.
Oficiální informace o Service Packu naleznete v Knowledge Base, ke stažení je v Download Center. Pro úplnost upozorňuji, že v současnosti se jedná o testovací verzi a není doporučené ji instalovat na produkční stroj.
Autor: Martin Cetkovský