Visual Studio 2008 en .NET Framework 3.5 Service Pack 1 Beta

Eerder deze week brachten we een publieke betaversie uit van de komende .NET 3.5 SP1 en VS 2008 SP1.  Deze onderhoudsupdate biedt een hele reeks bug-herstellingen en prestatieverbeteringen van problemen die gemeld zijn sinds de release van de producten in november. Er zijn ook tal van functies toegevoegd en verbeterd om vlotter .NET applicaties te kunnen bouwen (zie hieronder voor meer details).

We voorzien de finale release van zowel .NET 3.5 SP1 als VS 2008 SP1 deze zomer in de vorm van gratis updates. Je kunt de betaversie hier downloaden en installeren.

Belangrijk: opmerkingen over de SP1 Beta Installatie

De SP1 beta die vandaag is uitgebracht is nog  steeds een betaversie. Je moet dus voorzichtig zijn met de installatie op belangrijke machines. Er zijn enkele belangrijke opmerkingen bij de installatie van SP1 Beta waar je rekening moet mee houden : 

1) Als je systeem opereert onder Windows Vista, dan moet je ervoor zorgen dat je Vista SP1 hebt geïnstalleerd voordat je probeert de .NET 3.5 SP1 te installeren. Er zijn enkele set up problemen met .NET 3.5 SP1 wanneer je hem installeert onder de Vista RTM release. Deze problemen zullen worden opgelost voor de finale versie van .NET 3.5 SP1 release. Zorg er tot die tijd voor dat je Vista SP1 hebt geïnstalleerd voor je probeert de .NET 3.5 SP1 Beta te installeren

2) Als je VS 2008 hebt geinstalleerd met tools voor Silverlight 2 Beta 1 op je computer, dan moet je het deinstalleren - alsook de KB949325 update voor VS 2008 - voordat je VS 2008 SP1 Beta installeert (anders krijg je een setup fout). Je kunt hier  meer details vinden over de stappen die je exact moet volgen (opgelet: je moet 2 aparte dingen deinstalleren). Het is leuk om de Silverlight 2 runtime te hebben op je computer met .NET 3.5 SP1 - het component dat gedeinstalleerd moet worden is de VS 2008 tools van  het Silverlight 2 pakket. We zullen een nieuwe update van VS 2008 tools voor Silverlight uitbrengen binnen enkele weken die perfect werkt met de VS 2008 SP1 Beta. 

3) Er is een wijziging in de werking van de betaversie van .NET 3.5 SP1 die een probleem veroorzaakt in de uitgebrachte versie van Expression Blend. Deze veranderding wordt ongedaan gemaakt voor de finale .NET 3.5 SP1 release. Dan zullen ook alle versies van Blend zonder problemen werken. Tot dan moet je deze recente versie van Blend 2.5 downloaden om deze problemen te vermijden.

Verbetering voor Web ontwikkeling

.NET 3.5 SP1 en VS 2008 SP1 bevatten een reeks verbeterende functies die gericht zijn op webapplicatieontwikkeling. 

De VS Web Dev Tools team geeft hier meer details (inclusief specifieke bug herstellingsdetails) over sommige van de deelgebieden.  Hieronder vind je meer details over het werk in de webontwikkeling:

ASP.NET Data platform ondersteuning (ASP.NET Dynamic Data)

.NET 3.5 SP1 voegt een uitgebreid ASP.NET data "scaffolding" framework toe, waardoor je snel functionele datagestuurde webapplicaties kan bouwen. Met de ASP.NET Dynamic Data functies kun je snel automatisch web UI's bouwen (met volledige MLBW - maken, lezen, bewerken, wissen - ondersteuning) tegenover een waaier van dataobjectmodellen (inclusief LINQ naar SQL, LINQ naar Entiteiten, REST Services, en elk ander ORM of object model met een dynamische data provider).  

SP1 voegt deze nieuwe functionaliteit toe aan de bestaande GridView, ListView, DetailsView en FormView controls in ASP.NET, en maakt gesofisticeerde validatie en flexibele data template mogelijk. Het levert ook nieuwe gesofisticeerde gefilterde server controls, alsook ondersteuning voor automatische doorgang van de primary-key/foreign-key relaties en het beeld mooie foreign key namen af. Al deze nieuwigheden zorgen ervoor dat je geen kilometers code moet schrijven.

Je kunt hier meer leren over deze functie uit de video's en tutorials van Scott Hanselman.

ASP.NET Routing Motor (System.Web.Routing)

.NET 3.5 SP1 heeft een flexibele nieuwe URL routing motor ingebouwd waardoor je inkomende URL's kunt doorsturen naar route handlers. Het biedt ondersteuning voor zowel ‘parsing' parameters van schone URL's (bijvoorbeeld : /Products/Browse/Beverages), als ondersteuning om URL's op een dynamische manier te berekenen en te genereren vanuit route registraties.

Deze nieuwe routing motor wordt gebruikt door ASP.NET Dynamyc Data en het nieuwe ASP.NET MVC framework. Het zal zowel WebForms als MVC gebaseerde verzoeken ondersteunen.

Ondersteuning voor ASP.NET AJAX Terug/Doorgaan Knop Geschiedenis

.NET 3.5 SP1 voegt een nieuwe API toe tot ASP.NET AJAX waardoor je beter de geschiedenislijst van de browser kunt controleren (het laat je toe om de werking van de terug/doorgaan knop van de browser te controleren).

Je kunt meer leren van deze nieuwe functie in het artikel hier en de  video tutorial hier.

Ondersteuning voor ASP.NET AJAX Scriptcombinatie

.NET 3.5 SP1 introduceert een nieuw <CompositeScript> element in de <asp:ScriptManager> server control, waardoor je meerdere scriptreferenties erin kunt definiëren op een declaratieve manier. Alle scriptreferenties in het CompositeScript element worden gecombineerd op de server en als enkel script aangeboden aan de client. Hierdoor wordt het aantal aanvragen naar de server verminderd en de pagina laadtijd verbeterd voor een ASP.NET AJAX applicatie.

De functie van scriptcombinatie ondersteunt pad gebaseerde scripts en assembly resource gebaseerde scripts en biedt dynamisch de gecombineerde scripts met de ScriptResources.axd handler.

In februari brachten we een HotFix roll-up uit voor de VS 2008 Web Designer dat tal van prestatieverbeteringen en bug-herstellingen inhield. VS 2008 SP1 bevat al deze bug-herstellingen, alsook tal van bijkomende prestatieverbeteringen. 

Visual Studio 2008 JavaScript Script Formattering en codevoorkeuren

Visual Studio heeft voor verschillende releases ondersteunde broncode formatteringsopties voor VB en C# (spaties, lijn enters, haakjes opties, enz) die zeer krachtig zijn.

VS 2008 SP1 voegt een rijke broncode formatteringsondersteuning voor JavaScript toe (zowel inline <script> blokken alsook .js files). Je kunt nu je JavaScript broncode voorkeuren instellen in het Tools -> Options dialoogvenster:

Deze voorkeurinstellingen zullen automatisch gebruikt worden wanneer je een nieuwe JavaScript code gebruikt in de source editor. Je kunt ook bestaande code selecteren, rechtermuisklik, en kies voor de "Format Selection" optie om jouw stijlvoorkeuren toe te passen op de bestaande JavaScript code. Je kunt meer leren over deze nieuwe functie hier.

Betere Visual Studio Javascript Intellisense voor meerdere Javascript/AJAX Frameworks

VS 2008 bevat Javascript Intellisense ondersteuning in de broncode view.  De intellisense ondersteuning met de eerste VS 2008 release werkt ook met vanilla JavaScript alsook met code geschreven voor ASP.NET AJAX JavaScript type patterns. Niettemin is JavaScript een zeer flexibele taal, en veel JavaScript bibliotheken gebruiken deze flexibliteit ten volle om hun functies te implementeren - soms op een manier dat de intellisense engine zijn ondersteuning voorkomt. 

VS 2008 SP1 voegt veel betere intellisense ondersteuning toe voor populaire JavaScript bibliotheken (we werkten vooral aan ondersteuning voor JQuery, Prototype, Scriptaculous, ExtJS, en andere populaire bibliotheken). Je zult betere standaard intellisense krijgen wanneer je deze bibliotheken gebruikt. We zijn ook aan het kijken of we bijkomende intellisense hint bestanden kunnen behouden die je zult kunnen downloaden om betere intellisense en documentatie ondersteuning te krijgen voor deze populaire bibliotheken.

Hieronder zie je een voorbeeld bij het gebruik van de JQuery opstartfunctie met de VS 2008 SP1 JavaScript intellisense engine :

Merk op hieronder hoe VS 2008 SP1 de methode argumenten kan aantonen bij JQuery selectors : 

Ondersteuning voor Visual Studio Refaction voor WCF Services in ASP.NET Projecten

VS 2008 SP1 voegt betere refaction ondersteuning toe voor WCF services in de ASP.NET Web Site en ASP.NET Web applications.

AIs je de refaction ondersteuning gebruikt om de klasse namen, het interface contract of de namespace van een WCF service te hernoemen, dan zal VS 2008 SP1 automatisch de web.config aanpassen en het SVC bestand ernaar refereren.

Ondersteuning voor Visual Studio voor Klassieke ASP Intellisense En Debugging

Vorige versies van Visual Studio hadden intellisense ondersteuning en debugging voor klassieke ASP (.asp) pagina's. Het bestand en de project templates om klassieke ASP pagina's en projecten te maken zijn echter al enkele versies van VS niet meer aanwezig, en met de eerste versie van VS 2008 veronderstelden we verkeerdelijk dat mensen de klassiek ASP ondersteuning niet meer gebruikten. We vernamen via de feedback nadat we de VS uitbrachten dat mensen dit wel nog steeds gebruiken. 

 Deze ondersteuning voor klassieke ASP intellisense en debugging is met de VS 2008 SP1 terug :

 

Ondersteuning voor Visual Web Developer Express Edition voor Class Library en Web Application Projecten

De Visual Web Developer 2008 Express edition (helemaal gratis) in de SP1 is upgedate om beide klasse bibliotheken te ondersteunen en ASP.NET Web Application project types. Vorige versies van Visual Web Developer Express ondersteunden enkel ASP.NET web-site projecten.

Naast andere voordelen zorgt de ondersteuning van klasse bibliotheken en webapplicatieprojecten ervoor dat je ASP.NET MVC en Silverlight projecten kunt bouwen met de gratis Visual Web Developer 2008 Express. Al het voorgaande zoals JavaScript, Dynamic Data, Classic ASP en Ajax verbeteringen wordt door de Visual Web Express ondersteund.

Verbeteringen voor Client Development

.NET 3.5 SP1 en VS 2008 SP1 zorgen voor grote prestatie-, plaatsings- en functieverbeteringen voor de clientapplicaties. 

Tim Sneath heeft hier een goede blogpost over enkele client verbeteringen . Hieronder lees je meer details :

Application Startup and Working Set Performance verbeteringen

.NET 3.5 SP1 omvat belangrijke prestatieverbeteringen in de CLR dat snellere opstarttijden toelaat van de applicatie - in het bijzonder bij een "koude start" scenario (waar geen .NET applicatie draait). Deze verbeteringen werden bewerkstelligd door de layout te veranderen van de blokken in CLR NGEN afbeeldingen en door in belangrijke mate de disk IO access paterns te optimaliseren. We hebben ook enkele goede optimalisaties gedaan van onze JIT codegenerator waardoor het 'inlining' van methodes dat structs gebruiken beter werkt.

Vandaag meten we een verbetering tot 40% snellere opstart van applicaties voor grote .NET clientapplicaties met de geinstalleerde SP1.  Deze optimalisaties hebben ook het leuke neveneffect dat het verzoek per seconde verwerkingscapaciteit van ASP.NET applicaties in sommige gevallen tot 10% bedraagt! 

Nieuw .NET Framework Client Profiel Setup Pakket

.NET 3.5 SP1 introduceert een nieuwe setup pakketoptie voor ontwikkelaars die .NET clientapplicaties bouwen, ook ".NET Framework Client Profile" genoemd. Hiermee wordt een nieuwe setup installer aangeboden waardoor een kleinere, snellere en eenvoudigere installatie voor .NET clientapplicties mogelijk is op machines waarop het .NET Framework nog niet is geïnstalleerd.

De .NET Framework Client Profile setup bevat enkel die assemblies en bestanden in het .NET Framework die typisch zijn voor clientapplicatie scenario's. Bijvoorbeeld, het bevat Windows Forms, WPF, en WCF.  Het bevat geen ASP.NET en die bibliotheken en componenten die vooral voor serverscenario's worden gebruikt. We verwachten dat dit setup pakket zo'n 26MB groot zal zijn, en het kan veel sneller gedownload en geinstalleerd worden dan het volledige .NET Framework pakket.

De assemblies en API's in het .NET Framework Client setup pakket zijn 100% identiek aan deze in het volledige .NET Framework setup pakket (ze delen letterlijk dezelfde binaire code).  Dit betekent dat applicaties zowel op het clientprofiel als op het volledig profiel van .NET 3.5 SP1 kunnen gericht zijn.  (er is geen recompilatien vereist).  Alle .NET applicaties die werken met de .NET clientprofiel setup werken automatisch ook in het volledige .NET Framework.

Een ontwikkelaar kan in de projecteigenschappen van een clientapplicatie in VS 2008 SP1 aanduiden dat de clientapplicatie die hij aan het bouwen is door zowel het .NET Framework clientprofiel als het volledige .NET Framework ondersteund wordt.  Op de pagina van de projecteigenschappen kan hij een nieuwe checkbox selecteren dat aanduidt dat enkel die assemblies vereist zijn die in het .NET Framework clientprofiel aanwezig zijn.

VS 2008 zal dan verzekeren dat het project enkel kan verwijzen naar die assemblies die aanwezig zijn in het clientprofiel setup pakket (en zal een compileerfout genereren als je een type tracht te gebruiken in een assembly die niet aanwezig is in het clientpakket). De gecompileerde clientapplicatie zal dan kunnen werken op machines waarop het volledige .NET Framework geinstalleerd is en op machines die enkel het .NET Framework clientprofiel geinstalleerd is.

Als je een machine hebt waarop enkel het .NET Framework clientprofiel is geïnstalleerd en je probeert er een .NET applicatie op te doen werken, waarin niet aangeduid is dat het .NET Framework clientprofiel ondersteunt, dan zal de CLR weigeren om de applicatie uit te voeren. Het zal de eindgebruiker aansporen om te upgraden naar het volledige .NET Framework pakket. 

We zijn ervan overtuigd dat een groot aantal .NET clientapplicaties deze nieuwe .NET clientprofiel setup zal kunnen gebruiken om de installatie aanzienlijk te versnellen en zo gebruiksvriendelijker zal zijn.

Nieuw .NET Framework Setup Bootstrapper voor clientapplicaties

.NET 3.5 SP1 introduceert een nieuw "bootstrapper" component dat je kan gebruiken met clientapplicaties om op een automatische manier te kunnen zien of de juiste versie van het .NET Framework geïnstalleerd is.

Het bootstrapper component kan automatisch zowel het .NET Framework clientprofiel als het volledige .NET Framework setuppakket downloaden van het internet en installeren, als op je machine geen van beiden geïnstalleerd is. The boostrapper kan ook automatisch machines upgraden waarop vorige versie van het .NET Framework geïnstalleerd zijn. Bijvoorbeeld, als op je machine al .NET 3.0 geinstalleerd is en voor je applicatie is .NET 3.5 vereist, dan kan de bootstrapper indien gewenst de juiste update bestanden downloaden die nodig zijn voor de upgrade naar .NET 3.5 (en vermijden dat het volledige .NET Framework moet worden gedownload en geïnstalleerd.

Het setup bootstrapper component kan gebruikt worden met beide ClickOnce gebaseerde setuppakketten en met installeerproducten van derden (zoals Installshield). Met de bootstrapper is het ook mogelijk om volledig gepersonaliseerde setupfuncties in te stellen (splash screens, gepersonaliseerde setup wizard, enzovoort) en zou het gemakkelijker moeten zijn om geoptimaliseerde clientsetupmogelijkheden te bouwen.

ClickOnce Clientapplicatie installatieverbeteringen

.NET 3.5 SP1 bevat verschillende verbeteringen voor de ClickOnce installatie van zowel Windows Forms en WPF applicaties. Enkele voorbeelden van deze verbeteringen zijn:

  • Ondersteuning voor het .NET Framework clientprofiel (alle ClickOnce functies worden ondersteund)
  • ClickOnce applicaties kunnen nu programmatorisch geinstalleerd worden met een "setup.exe" met een gepersonaliseerde installatie UX.
  • ClickOnce verbeteringen om MSI + ClickOnce applicatiepakketten te genereren
  • ClickOnce error dialoogvensters ondersteunen nu links naar applicatiespecifieke support websites
  • ClickOnce biedt nu ondersteuning voor design-time om bestandassociaties in te stellen
  • ClickOnce applicatie publishers kunnen nu beslissen om de ClickOnce manifestaties te tekenen en op te delen naargelang de scenario's.
  • Ondernemingen kunnen er nu voor kiezen om enkel ClickOnce applicaties met Authenticode uit te voeren getekend met "Known Publishers" en al de rest wordt geblokkeerd.
  • FireFox browser extensie om ClickOnce installaties te ondersteunen in Firefox browsers. 

Windows Forms Controls

SP1 voegt verschillende nieuwe Windows Formulieren controls toe, zoals vector shape, printing en DataRepeater controls:

 

WPF prestatieverbeteringen

.NET 3.5 SP1 bevat verschillende belangrijke prestatieverbeteringen en optimalisaties voor WPF. Enkele van de verbeteringen voor specifiek graphics zijn:

  • Fijnere animaties
  • Hardware aangestuurd genereren van Blur en Dropshadow Bitmap effecten
  • Snelheidverbeteringen van textgeneratie, vooral met VisualBrish en 3D scenes
  • 2D graphics verbeteringen, vooral met z-index scenario's
  • Een nieuwe WriteableBitmap klasse waardoor tear-free en onmiddellijke updates mogelijk zijn van bitmaps. Hierdoor kunnen gepersonaliseerde "paint" style applicaties gecreëerd worden, alsook data visualisaties, grafieken en graphics die mogelijk de standaard WPF 2D graphics API's voorbijsteken. 
  • Layered window prestatieverbeteringen

SP1 biedt ook ondersteuning voor betere dataschaalbaarheid in WPF. De ListView, ListBox en eView controls ondersteunen nu "item container recycling" en "virtualization", waardoor het mogelijk wordt om met gemak een prestatieverbetering van 40% te halen met scroll scenario's. Deze controls kunnen ook een "deferred scrolling" functie ondersteunen, waardoor je vermijdt onmiddellijk te scrollen, maar wacht tot een gebruiker de scroller loslaat (de standaard scroller mode in Outlook). Dit kan heel nuttig zijn om heel snel in veel datasets moet scrollen.

WPF Data verbeteringen

.NET 3.5 SP1 bevat verschillende verbeteringen voor de binding en wijziging van data voor WPF. Enkele voorbeelden:

  • StringFormat ondersteuning in {{ Binding }} expressies om zo gemakkelijk de gebonden waarden te kunnen opmaken
  • Nieuwe alternerende rijen ondersteuning in controls die afgeleid zijn uit ItemsControl, waardoor het gemakkelijk wordt om wisselende eigenschappen op rijen te plaatsen (vb. wisselende achtergrondkleuren)
  • Betere bewerking en conversie ondersteuning voor nulwaarden in wijzigbare controls
  • Item-level validatie dat validatieregels toepast op een volledig gebonden item
  • MultiSelector ondersteuning om multi-selection en bulk editing scenario's te bewerken
  • IEditableCollectionView ondersteuning voor interface data controls voor databronnen en maakt wijzigen/toevoegen/verwijderen van een item mogelijk op een transactionele manier
  • Prestatieverbeteringen wanneer binding aan IEnumerable databronnen

WPF vertoont nu ook haken waardoor ontwikkelaars gepersonaliseerde panels kunnen schrijven met gevirtualiseerde scrolling. We zullen deze ondersteuning gebruiken in combinatie met de bovenstaande databinding verbeteringen om de nieuwe WPF datagrid te bouwen die later dit jaar zal worden uitgebracht.

WPF Extensible Shader Effects

.NET 3.5 SP1 voegt ondersteuning toe aan WPF voor een nieuwe architectuur van shader effects en API waardoor het mogelijk wordt om zeer expressieve visuele effecten te creëren en toe te passen op om het even welke control of eender welk element in WPF. Deze shader effects ondersteunen de samensmelting van meerdere input composities. Wat hen net zo krachtig maakt is dat WPF effecten uitvoert (onder andere de effecten die je zelf bouwt) met GPU, waardoor je een hardware aangestuurde graphics prestatie verkrijgt. Zoals bijna alles in WPF kan je ook WPF databinding en animatie gebruiken op de eigenschappen van een effect (waardor ze helemaal geintegreerd worden in een ervaring).

Een effect op een control toe te passen is supereenvoudig, gewoon een "effect" eigenschap van de control instellen. Bijvoorbeeld,om een hardware aangestuurd drop-shadow effect toe te voegen aan een knop, dan kan je de ingebouwde <DropShadowEffect> gebruiken via code of XAML:

Waardoor de knop er zo zal uitzien:

Omdat effecten uitbreidbaar zijn, kunnen ontwikkelaars hun eigen effectobjecten aanmaken en toepassen. Bijvoorbeeld, een zelfgemaakt "DirectionalBlurEffect" kan gecreëerd en toegevoegd worden aan een ListBox control om de scrollmanier aan te passen en om een bluf effect te gebruiken als je snell scrollt:

Hou de blog van Greg Schechter's blog bij om meer te leren over hoe de Effects architectuur werkt en hoe je nieuwe effecten kan creëren en toepassen in je nieuwe applicaties. 

Opmerking: Naast de introductie van de nieuwe Shader Effects API, WPF heeft in SP1 ook de bestaande Blur and DropShadow Bitmap effecten zo gewijzigd dat ze al hardware gestuurd zijn.

WPF Interoperability met Direct3D

.NET 3.5 SP1 voegt ondersteuning toe om Direct3D op een efficiente manier te integreren in WPF. Hierdoor krijg je meer toegang tot de hardware en kan je ten volle profiteren van de Direct3D API in WPF applicaties. Je zal Direct3D content kunnen behandelen zoals een afbeelding in een applicatie en als patronen op WPF controls.  

Bijvoorbeeld, hieronder zie je drie voorbeeldjes van de Direct3D SDK:

We zouden ze kunnen laden als een afbeeldingsoppervlak in een WPF applicatie, of ze aanduiden als patronen op WPF controls. Hieronder zie je een voorbeeld van de aanduiding als patronen op blokjes in een WPF 3D application:

Opmerking: de Direct3D integratie is niet de SP1 beta release van vandaag.  Het zal verschijnen in de finale SP1.

VS 2008 voor WPF verbeteringen

VS 2008 SP1 bevat verschillende belangrijke verbeteringen voor WPF projecten en de WPF designer. Enkele voorbeelden:

  • Events tab ondersteuning in de property browser
  • Verschillende prestatieverbeteringen
  • Mogelijkheid om eigenschappen alfabetisch te rankschikken in de property browser
  • Marge snaplines waardoor de lay out van formulieren sneller kan worden gemaakt
  • Betere ontwerpondersteuning voor TabControl, Expander en Grid
  • De refactoring vanuit de code doet nu de updates voor je XAML (inclusief zowel de control declaraties als de event declaraties in XAML)
  • "Go to Definition" en Find All References" ondersteunen nu ook dingen die gedeclareerd worden in XAML

In SP1 werd ook de debugger geupdate zodat runtime fouten in de XAML opmaak (bijvoorbeeld, referentiestijlen, databronnen en / of andere objecten die niet bestaat) beter kunnen worden geidenticiffeerd met de debugger.

Verbeteringen voor data ontwikkeling

.NET 3.5 SP1 en VS 2008 SP1 bevatten een hoop verbeteringen voor data ontwikkeling. Enkele voorbeelden zijn:

SQL 2008 ondersteuning

VS 2008 en .NET 3.5 worden geupdate om ook de komende SQL 2008 release te kunnen ondersteunen. De Visual Studio 2008 data designers, projects en wizards ondersteunen nu volledig SQL 2008 databases. 

ADO.NET Entity Framework en LINQ to Entities:

.NET 3.5 SP1 bevat het nieuwe ADO.NET Entity Framework, waarin ontwikkelaars een Entity Data Model op een hoger niveau kunnen definieren over hun relationele data en kunnen dan programmeren naar dit model. Concepten zoals inheritence, complex types en relationships (including M:M support) kunnen ermee gemodelleerd worden.  VS 2008 SP1 bevat nu een ingebouwde designer ondersteuning om te helpen met dit modelleren:

Het ADO.NET Entity Framework en de VS 2008 Entity Framework Designer ondersteunen zowel een inplugbaar providermodel waardoor ze gebruikt kunnen worden in om het even welke database (waaronder Oracle, DB2, MySql, PostgreSQL, SQLite, VistaDB, Informix, Sybase, en andere).

Developers kunnen dan LINQ en LINQ to Entities  gebruiken om  deze objecten te manipuleren, updaten en aan te spreken met een query.

ADO.NET Data Services (vroeger gekend onder de codenaam "Astoria")

.NET 3.5 SP1 bevat een flexibel framework dat de creatie van REST-gebaseerde dataservices mogelijk maakt.  Vroeger gekend onder de codenaam "Astoria", biedt het ADO.NET Data Services framework ondersteuning voor de publicatie van data met een standaard REST URI syntax. Daarbij wordt gebruik gemaakt van de standaard HTTP werkwoorden om te opereren op de databronne.  Ontwikkelaars kunnen gemakkelijk datamodels blootstellen die gemaakt werden met het ADO.NET Entity Framework en / of een inplugbaar provider model om andere datamodellen bloot te stellen.

In addition to publishing data sources, the framework also adds a client API for working with remote REST services.  Included with this client API is a LINQ library that allows the remote query of REST services.

Verbeteringen voor WCF ontwikkeling

.NET 3.5 SP1 en VS 2008 SP1 bevatten verschillende verbeteringen voor WCF ontwikkeling. Enkele voorbeelden zijn:

  • Belangrijke verbeteringen op schaalbaarheid (5-10x) in webgebaseerde applicatiescenario's
  • Ondersteuning voor het gebruik van ADO.NET Entity Framework entities in WCF contracten
  • API gebruiksvriendelijkheidsverbeteringen met DataContract Serializers, en met de UriTemplate en WCF web programming models
  • Verbeterde TestClient ondersteuning in VS 2008 SP1
  • Nieuwe Hosting Wizard in VS 2008 SP1 voor WCF Service Projecten
  • Verbeterde debugging ondersteuning in partial trust scenario's

VB en C# verbeteringen

De VB en C# teams hebben ook enkele goede verbeteringen aangebracht in VS 2008 SP1:

Visual Basic

Je kunt nu "XML to Schema' items toevoegen aan Visual Basic projecten. In dat geval zal een wizard openen waarin je een XSD schema setkunt creëren met een varieteit aan XML bronnen. Deze schema set wordt dan toegevoegd aan het project en schakelt het VB XML intellisense in. Deze ondersteuning was voorheen beschikbaar als een webdownload. Je kan er hier meer over leren. 

VS 2008 SP1 bevat nu ook een XSD browser waardoor je kan navigeren naar XSD schema sets.  In de finale SP1 release zullen ontwikkelaars rechtermuisklikken kunnen maken op XML elementnamen (ofwel in XML properties) in de VB code editor en de "Go To XML Schema Definition" selecteren. Hierdoor zal de XSD browser openen en de schemaset vertonen (en het huidige element selecteren) voor het VB project.  

C#

De C# code editor identificeert en vertoont nu rode squiggle errors voor veel problemen met semantische code die voorheen een expliciete compilatie vereisten om ze te kunnen herkennen. Bijvoorbeeld, als je vandaag een onbekend type probeert te identificeren en gebruiken in de C# code editor, dan zal je geen compileerfouten zien totdat je een build doet. Met SP1 zul je nu onmiddellijk rode  squiggle fouten te zien krijgen (er is geen expliciete compilering nodig):

De debugger in VS 2008 SP1 werd ook verbeterd om meer debugging ondersteuning te kunnen bieden om LINQ expressies te kunnen evalueren en te kunnen zien tijdens het debuggen:

Datasources met LINQ hebben nu een "Result View" node show up in het debuggervenster. Als je deze node uitbreidt, dan zal een LINQ expressie geëvalueerd worden en het mogelijk maken om de gematerialiseerde objecten te controleren dat het retourneert.

Team Foundation Server verbeteringen

TFS 2008 SP1 bevat een hoop verbeteringen. Ik raad jullie aan om de Team Foundation Server 2008 SP1 Preview blog post van Brian Harry te lezen voor meer details

 Samenvatting

.NET 3.5 SP1 en VS 2008 SP1 bieden een hoop bugherstellingen, prestatieverbeteringen en veel meer functieverbeteringen waardoor het beter gaat om alle types van .NET applicaties te bouwen. Het zal een volledig compatibele service pack release zijn.  

We voorzien de finale release van zowel .NET 3.5 SP1 als VS 2008 SP1 deze zomer als gratis updates. Je kan de betaversie hier downloaden en gebruiken.

Hopelijk kunnen jullie hiermee aan de slag,

Scott

Published Thursday, May 15, 2008 11:33 AM by Joeri Pansaerts

Comments

No Comments