3 new Silverlight blogs have been completed for this week. Check them out!
Thank you.
Mike Snow
SDET Lead
Visual Studio Web Tools
6 new Silverlight tutorials are completed!
Thank you.
Mike Snow
SDET Lead
Visual Studio Web Tools
Interested in learning something new about Silverlight almost every day? I will be posting “Tips of the Day” for Silverlight on my blog at http://silverlight.net/blogs/msnow/default.aspx.
For example, over the past few days, I have added the following tips:
If you have any suggestions or requests don’t hesitate to ask.
Thank you.
Mike Snow
SDET Lead
Visual Studio Web Tools
Some customers discovered that sometimes switch to Design view was very slow. We analyzed submitted reports and tracked the issue down to a code that was discovering available AJAX Extenders and which contols they were applicable to. In order to avoid unnecessary delays we moved discovery of AJAX extenders to a background thread. This made switch to Design view significantly faster since designer is now available immediately while extenders are still being enumerated. Here is a screenshot, look at the status bar that shows "Discovering AJAX extender controls..." and displays a small progress indicator:

If you select a control before applicable extenders are discovered, the control will not display its smart task menu and/or will not have "Add Extender..." menu item.

Unfortunately, if control is selected, due to architectural limitations we cannot update its smart task availability. Therefore you may have to unselect and reselect the control in order to let it update its smart task menu.

We have had complaints from some customers saying that their Web Project build performance with VS is very slow and it turns out that for some of the complaints the actual issue was anti-virus programs running on their machines.
So, how do anti-virus programs affect VS build?
Please take a look at the following snippet from ScottGu's blog to understand why!
Watch out for Virus Checkers, Spy-Bots, and Search/Indexing Tools
VS hits the file-system a lot, and obviously needs to reparse any file within a project that has changed the next time it compiles. One issue I've seen reported several times are cases where virus scanners, spy-bot detecters, and/or desktop search indexing tools end up monitoring a directory containing a project a little too closely, and continually change the timestamps of these files (they don't alter the contents of the file - but they do change a last touched timestamp that VS also uses). This then causes a pattern of: you make a change, rebuild, and then in the background the virus/search tool goes in and re-searches/re-checks the file and marks it as altered - which then causes VS to have to re-build it again. Check for this if you are seeing build performance issues, and consider disabling the directories you are working on from being scanned by other programs. I've also seen reports of certain Spybot utilities causing extreme slowness with VS debugging - so you might want to verify that you aren't having issues with those either.
If you are running into slowness with VS builds please try to exclude your directories from being scanned by anti-virus programs and see if it helps to improve the build performance.
For other tips/ tricks with VS Web Application Project build performance take a look at this full blog entry by ScottGu.
Performance issues with VWD? Email them to vwdperf-at-microsoft.com.
Ranjini | Web Development Tools team
We have been listening to your [strong] feedback and we are now happy to announce that multiple selection and alignment operations in Design view are coming back and will be included in VS 2008 SP1 RTM and Visual Web Developer Express 2008 SP1 RTM.
We do understand that designing pages using absolute positioning of elements is a highly controversial issue and some people have strong opinions on it. However, many users have been relying on the functionality that Visual Studio used to provide since VS 2002 and expected feature to stay in subsequent versions.
In VS 2008 we replaced old IE based designer by a new designer that is shared with Expression Web and is based on former FrontPage technologies. Unfortunately, neither FrontPage nor Expression Web ever had multiple selection functionality. (As a side note, Visual Interdev 98 didn’t have it either). Thus it took us some time to implement the feature in the new code base and it was not yet ready for SP1 Beta release.
We’d like to mention that due to time constraints, not all functionality available in VS 2005 will become available in VS 2008 SP1. Here is what will be included:
1. Multiple selection using Ctrl+Click
2. Primary selection is indicated by white tab
3. Position menu with Absolute and Relative sub items
4. Align, Make Same Size and Order menus commands.
5. Ability to apply property to multiple controls in the Properties window
6. Delete multiple controls
What is not included:
1. Ability to drag multiple controls
2. Cut/Copy/Paste multiple elements
We are, of course, considering bringing full functionality in the next version of the Visual Studio and Visual Web Developer.
Here are screenshots from one of the recent VS 2008 SP1 build:


I added a blog "ADO.net Data Service reflection class creation in VS2008 SP1 Beta, a breaking change with CTP time" in
http://blogs.msdn.com/xqiu/archive/2008/05/13/ado-net-data-service-reflection-class-creation-in-vs2008-sp1-beta-a-breaking-change-with-ctp-time.aspx
Hope it helps for data service lovers.
Xin, SDET in Web Development Tools
In Beta1, VS Silverlight tools doesn’t allow users to maintain separate build output folder for different build configuration, and this causes once you switch from “Debug” to “Release” build configuration, under ClientBin folder the existing debug assemblies will be overwritten by the release version. Unless you switch back to “Debug” configuration, you can’t get the debug version back. This also impacts the .xap files copied to the ClientBin folder at the hosting web project.
In Beta2, we have made several changes to improve the experiences
1. At Silverlight project side, we don’t use the “ClientBin” folder anymore; rather, we bring back the old one of “Bin” coming with regular client projects
2. Underneath it, each build configuration will have its own subfolder called “Debug”, “Release”, etc.
![clip_image002[1] clip_image002[1]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/Supportconfigurationspecificoutputfolder_AF6B/clip_image002%5B1%5D_thumb.jpg)
3. At a web project’s side, underneath the “ClientBin” folder, there is a subfolder created for a specific build configuration. The .xap file gets copied to there
![clip_image004[1] clip_image004[1]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/Supportconfigurationspecificoutputfolder_AF6B/clip_image004%5B1%5D_thumb.jpg)
4. You can feel free to switch among different build configurations. VS build will pick up the current active configuration and builds the project and copies to the hosting web project. If you use msbuild, you can pass in the preferred configuration through the command line.
Several UI elements were also adjusted accordingly
1. In the “Add Silverlight Application” wizard, you have a checkbox to enable this. If you turn it off, you will get beta1 behavior
![clip_image006[1] clip_image006[1]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/Supportconfigurationspecificoutputfolder_AF6B/clip_image006%5B1%5D_thumb.jpg)
2. If you have already added a Silverlight application into a web project, you will have UI option in the property page dialog to enable this (click the “Change…” button)
![clip_image008[1] clip_image008[1]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/Supportconfigurationspecificoutputfolder_AF6B/clip_image008%5B1%5D_thumb.jpg)
3. Now you are having a VS project which is configuration folder aware.
VS Silverlight beta2 adjusted its build functionalities to support the new Silverlight runtime localization model, which essentially is “one language, one xap”. This article provides the steps to take to build a localized app
Let us say, you want to localize your app for the culture of “ja-jp”. You have created several resource files and you want VS to pack the satellite assemblies into the .xap file.

1. In the solution explorer unload the Silverlight project and edit the project file. There is pre-created tag of “SupportedCultures” in the first property group tag. Fill in the culture value of “ja-jp”, so you get “<SupportedCultures>ja-jp</SupportedCultures>”. Note, you can also fill in a culture list separated by “,” or “;” to support multiple cultures/languages in the same xap file. For example you can fill in a string of “ja-JP;fr-FR”. VS reads this list and only packs related satellite assembly folders.

2. Save the project file, reload it and then build it. You can open the .xap file generated under “Bin\Debug” to check out the content. You can see VS only packs the “ja-jp” folder, but no “ja” folder since it is not in the culture list.

3. If you would like to create a new xap file for a new culture, say “de”, you need to create new build configuration in VS and insert the tag of “<SupportedCultures>de</SupportedCultures>” into the related property group tag in the project file

The project file change looks like,

4. If you have a hosting web project, you are recommended to turn on the “copy to configuration specific folders” through the “Silverlight Applications” tab in web’s property page dialog. Just click the “Change…” button. You can also enable it in the “Add Silverlight Application” wizard when you create a new project. So different .xap files will stay underneath a separate subfolder, and they won’t overwrite each other.


A number of great improvements and changes were made for Silverlight Tools Beta 2. The following list summaries some of the major changes with details on each below.
- WCF templates for Silverlight Enabled.
- Build configurations.
- XAML Validation now reports build errors.
- Setup Improvements.
- Projects created in Beta 1 are prompted for conversion when opening to Beta 2.
- Linking a Web Site to a Silverlight Application.
1. WCF Templates for Silverlight Enabled.
WCF templates are now enabled for Silverlight. If you want to add Web Services to your Silverlight application, this is the route to go. To do this, right click on your web site node in the Solution Explorer and choose “Add New Item”.
This will bring up the “Add New Item” dialog. Choose the template “Silverlight-enabled WCF Service”.
In order to add a reference from your Silverlight Application to the newly created service right click on your Silverlight application node in the Solution explorer and choose “Add Service Reference”.
From the “Add Service Reference” dialog click the “Discover” button and click the “OK” button after selecting your service.
2. Build Configurations.
For this release we enabled the Configuration Manager for Silverlight. This controls where your output is and allows you to have multiple XAP’s on your web site for debugging purpose versus the actual release. Note that you will need to change your Test Page source to point to the correct XAP if you make modifications in this dialog.
I.e from TestPage.aspx:
<asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/SilverlightApplication9.xap" MinimumVersion="2.0.30523" Width="100%" Height="100%" />
You can access this dialog from the menu bar of Visual Studio 2008 via Build | Configuration Manager…
This will invoke the following dialog:
3. XAML Validation now reports build errors.
If your XAML has any errors we will now report them after you build.
4. Setup Improvements
Uninstalling previous versions is no longer necessary. However, if you install SP1 over Beta 2 you will need to re-install Beta 2 to update the patch. Also, our tools setup removes the Microsoft Blend March Preview. Microsoft Blend will be re-releasing around the same time as the release of our Beta 2 tools.
5. Projects created in beta 1 are prompted for conversion when opening to Beta 2.
Projects created in beta 1 are prompted for conversion when opening to Beta 2.
6. Linking a Web Site to a Silverlight Application.
For Beta 2 we removed the “Add Silverlight Link” option in favor of the following alternatives for adding a Silverlight Application to your Web Site.
Option #1: Adding a new Silverlight application to an existing Web Site.
On the web site node of your solution explorer, right click and choose “Add New Item”.
This will bring up the “Add New Item” dialog. Choose “Silverlight Application”.

Click the “Add” button and this will bring up the final dialog. In this dialog, choose the language, location and name of the Silverlight application you wish to create and click “Add”.
In case you were wondering what the option for “Copy to configuration specific folders”, when checked, the output of your XAP will be copied to the configuration specific sub-folders of the target folder. This is useful if you don’t want Release and Debug builds to clobber each other. I.e.:
- ClientBin\Debug\foo.xap
- ClientBin\Release\foo.xap
Option #2: Adding an existing Silverlight application to an existing Web Site.
From your Solution explorer in your web site, right click and choose Add Existing Project:
Browse to and open an existing Silverlight application that you want to in this web site:
Now, to associate the web site with the Silverlight application you have two choices:
Choice #1: Once again right click on your web site and choose “Add New Item”
This will bring up the “Add New Item” dialog. Choose “Silverlight Application” and click the “Add” button.
This time you will see the option to use an existing project is enabled. Select this option and click the “Add” button.
Choice #2: Right click on your web site and choose “Property Pages”
This will bring up the Property Pages Dialog. From this dialog, Select “Silverlight Applications” and click the “Add” button.

This will bring up the following “Add Silverlight Application dialog”. Chose the first option to use an existing Silverlight project, click “Add” and you are done!
Let me know if you have any questions related to Silverlight Tooling for Beta 2.
Thank you.
Mike Snow
SDET Lead
Visual Studio Web Tools
Earlier this week ScottGu announced the release of ASP.NET MVC Preview 3 and outlined some recent changes to the framework. I wanted to give you an update on the tooling enhancements for preview 3. The two major enhancements you will notice are:
- Support for Visual Web Developer Express 2008 (SP1)
- Improved Support for Third Party Templates
Support for Visual Web Developer Express 2008 (SP1)
Visual Web Developer Express 2008 (SP1) now has support for Class Libraries and Web Application Projects. Since MVC Applications are a flavor of Web Application Projects, we are now able to support ASP.NET MVC for Visual Web Developer Express 2008 (SP1). If you have installed Visual Web Developer Express 2008 (SP1), you will notice the ASP.NET MVC templates in the Web Project template section of the New Project Dialog.
(Fig 1: Visual Web Developer Express 2008 (SP1) New Project Dialog)
If you are using Visual Web Developer Express 2008 (SP1), the first thing you will probably notice when creating a new ASP.NET MVC Web Application is that no Create Unit Test Project dialog appears. The reason for this is that Visual Studio Team Test is not included with express skus so there are no Visual Studio Test Project templates. You will need to install third party test framework templates to take advantage of the Create Unit Test Project dialog. I outlined the steps for this in a prior blog post but these steps should not be necessary much longer as Phil Haack has been working with MBUnit and XUnit to update their installers for ASP.NET MVC Preview 3 template support.
Improved Support for third party templates
At this point you are probably thinking one of two things:
1. "I don't really care about the improvements, just give me some awesome templates!"
Sure, here you go: NUnit MVC Preview 3 Templates
Just extract the zip file and run InstallNUnitTemplates.bat or InstallNUnitTemplatesExpress.bat if you have installed VWD Sp1. You will need to run the batch files as an adminstrator if you are running Vista since they run .reg files to register the templates. (x64 is not yet supported in the batch files, coming shortly)
(Fig 2: Extracted NUnit Template Download)
After running the batch file and starting Visual Studio, you should now see the Create Unit Test Project dialog with the updated NUnit templates. Your project will build out of the box and contain implemented unit tests that will pass in NUnit.
2. "Tell me more about the template improvements, how do I make my own?"
The major improvement we made in the ASP.NET MVC Preview 3 timeframe was to support a new template replacement variable, $mvcprojectname$. You can include this variable anywhere in your test project template and it will be replaced by the name of the parent MVC Project name when a new ASP.NET MVC Application is created and the test project is selected in the Create Unit Test Project dialog. The NUnit Test Project template contains the following two lines in HomeControllerTest.cs:
using $mvcprojectname$;
using $mvcprojectname$.Controllers;
As you can see, when the test project is created, the using statements will refer to the parent MVC Project, allowing the solution to build without having to make any lame code edits.
(Fig 3: NUnit Test Project With $mvcprojectname$ Parameter Replacement)
(As a side note, now that Actions can return objects of type ActionResult(), unit testing controllers is far easier. The Visual Studio Unit Test templates have also been updated with identical unit tests that are each no more than five lines of code and do not require a mock object framework.)
Lastly, when you choose to create a Visual Studio Unit Test project in the Create Unit Test Project dialog, a custom wizard copies System.Web.Abstractions, System.Web.MVC, and System.Web.Routing to the bin of the test project automatically. If you want to do the same in your third party template, simply modify your .vstemplate file with the bold lines:
<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Project">
<TemplateData>
<Name>NUnitDemoPreview3</Name>
<Description>Updated NUnit Test Project</Description>
<ProjectType>CSharp</ProjectType>
<ProjectSubType>
</ProjectSubType>
<SortOrder>1000</SortOrder>
<CreateNewFolder>true</CreateNewFolder>
<DefaultName>NUnitDemoPreview3</DefaultName>
<ProvideDefaultName>true</ProvideDefaultName>
<LocationField>Enabled</LocationField>
<EnableLocationBrowseButton>true</EnableLocationBrowseButton>
<Icon>__TemplateIcon.ico</Icon>
</TemplateData>
<TemplateContent>
<CustomParameters>
<CustomParameter Name="$MVCReferences$" Value="System.Web.Abstractions.dll;System.Web.Mvc.dll;System.Web.Routing.dll"/>
</CustomParameters>
<Project TargetFileName="NUnitDemoPreview3.csproj" File="NUnitDemoPreview3.csproj" ReplaceParameters="true">
<Folder Name="Controllers" TargetFolderName="Controllers">
<ProjectItem ReplaceParameters="true" TargetFileName="HomeControllerTest.cs">HomeControllerTest.cs</ProjectItem>
</Folder>
<Folder Name="Properties" TargetFolderName="Properties">
<ProjectItem ReplaceParameters="true" TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
</Folder>
</Project>
</TemplateContent>
<WizardExtension>
<Assembly>Microsoft.VisualStudio.Web.Extensions, Version=9.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</Assembly>
<FullClassName>Microsoft.VisualStudio.Web.Mvc.TestTemplateWizard</FullClassName>
</WizardExtension>
</VSTemplate>
(Fig 4: .vstemplate file using the MVC Template Wizard)
This addition to your .vstemplate file will rely on TestTemplateWizard to create a custom parameter and add the references from the MVC run-time install location. This is more robust than relying on hint paths to locate the bin references and eliminates difficulty with unresolved references in MVC test projects.
Hope this helps you unit test your ASP.NET MVC Preview 3 apps!
Joe Cartano | SDET | Visual Studio Web Developer
Every year we send a team to TechEds to meet you, our customers. They will be at the event site from 8.30 AM to 6.00 PM to answer your questions from June 3rd to June 6th. This time we have the following representatives at TechEd.
ASP.NET Team: Kathy Carper, Scott Hunter, Simon Calvert, Clay Compton, Konst Khurin, Mark Rosenberg and Robert Boedigheimer
Web Development Tools Team: Barry Tang, John Dundon, Vinaya Bhushana Gattam Reddy and Vishal Joshi
So come talk to them and find out more about what our team has to offer. Also, watch out for a demo from Simon and Vishal on the Newest features in ASP.NET and Microsoft Visual Studio 2008 Web Developer. The session time and code is as mentioned below.
Session code: WUX306: A Lap Around the Newest Features in ASP.NET and Microsoft Visual Studio 2008 for Web Developers
Session Day/Time: 6/3/2008 10:30AM-11:45AM
Have Fun!
~Reshmi Mangalore
SDET WebTools
If you have the first release of KB945140 installed on your system you may run across an error when trying to install Visual Studio SP1 Beta. Likewise if you have any previously released hot fix, VS may not install properly even though it reports success. The work around is to manually remove traces of KB944899 from your system, or you can run a tool to do this for you. For more information and details, you can check out Heath Stewart's blog post.
Tool Instructions
Simply run the tool found at http://code.msdn.microsoft.com/RemoveKB944899 prior to install.
Manual Instructions
For Vista or later:
- Open Control Panel
- Click on "Programs"
- Click on "View installed updates"
- Remove KB944899 listed under any versions of Visual Studio 2008
For earlier operating systems:
- Open Control Panel
- Click on "Add / Remove Programs"
- Check "Show updates"
- Remove KB944899 listed under any versions of Visual Studio 2008
If any other patches are installed on Visual Studio 2008 that you see in the list of updates, please open an elevated command prompt and run the following:
- Check for other references to KB944899:
reg.exe query HKLM\Software\Microsoft\Updates /f KB944899 /k /s
- For each search result returned, copy the full key name (including spaces) and run the following command to delete them, replacing {key} with the search result:
reg.exe delete "{key}" /f
Bradley’s earlier post, ASP.NET Dynamic Data Preview Released on MSDN Code Gallery, outlined the functionality the ASP.NET Dynamic Data is offering and the walkthrough steps of how to create a Dynamic Data website using the wizard. In this post, I just want to explain a little bit how the selection between modules can “magically” work.
Let’s create a website having the following structure:
Categories/List.aspx
CategoryList
ProductList
Categories/Details.aspx
CategoryDetails
To construct this web site, we would need to:
- Through the Dynamic Data Website Wizard, add Categories and Products tables to the model
- Add the Category List module.
- Add the Product List module to the same page as Category List. This can be done by selecting the List.aspx page on the right column, selecting the List module under the Product, then clicking on the right arrow button
- Add the Category Details to another page by selecting the Website node on the right panel first, then double-clicking on the Category Details module on the left column.
When you run the website (Ctrl-F5 from the Default.aspx file), you would see the following page:
Click on the Categories link to navigate to the Categories/List.aspx page. You would see the page as shown below.
Notice that the Product List is filtered by the selection in the Category List.
If you select the 4th row in the Category List (the selected row is highlighted), only the products under the “Dairy Products” Category will be shown in the Product List.
This works through setting the DynamicControlParameter in the LinqDataSource control for the Products.List module, so that when you click ‘Select’ on a row in the Category List, the Product List table is updated to show only products under that category. If you look at the source view of the Category/List.aspx file, you would find the following markup:
Now let’s look at the relationship between the Category.Details and Product.List. If you click on the Details link of the second row in the Category.List for the Condiments category, it will navigate to the Categories/Details.aspx as follows:
If you click on the “View Products” link, it will take you back to the Categories/List.aspx page. This time, the “Condiments” row in the Categories.List is selected, and the Products.List shows only products under the “Condiments” category as seen in the screen shot below.
How does the Categories.List know to set the corresponding selection from the URL string? This is because in the CustomPages\Categories\List.aspx.cs file, we register the ListView control of the Categories.List module with the DynamicDataManager through the call DynamicDataManager1.RegisterControl, with the setSelectionFromUrl parameter set to True. When the query string contains the primary key of the registered control, the control will set the selection on the row that matches the value of the primary key. If the registered control’s primary key is not found in the query string, then nothing will be selected. This is different from having the Categories.List to have the DynamicQueryStringParameter since it would cause a filtering, not a selection, on the Category.List (that means the Category.List would only show the rows for the requested category, instead of showing all the rows and having the row that matches the requested category selected).
Anh Phan | SDET / Visual Studio Web Developer
Visual Studio 2008 SP1 Beta is now available! You can download it here (though before you do, read the note below). In SP1, we have added some new features as well as many bug fixes. In this blog post I’ll attempt to give an overview of the features as well as some of the key issues the Visual Web Developer team has addressed so far in the service pack.
Installation Note: If you previously installed a Visual Studio 2008 Hotfix (in particular, KB944899), you should run the Hotfix Cleanup Utility before installing Visual Studio 2008 SP1 Beta. For more information, see Remove KB944899 for Visual Studio 2008 SP1 Beta1.
New Features:
Class Libraries and Web Application Projects in Express
Visual Web Developer 2008 Express Edition now has support for Class Libraries and Web Application Projects. This enables you to leverage features only available in Visual Studio Standard and above before, including project-to-project references and the web application project build system. To create one of these projects, you can simply go to File > New Project. For more information on Web Application Projects (WAP), you can read this introduction to WAP on MSDN.
![clip_image002[9]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/VisualStudio2008SP1Beta_A074/clip_image002%5B9%5D_thumb.jpg)
Note that Express SP1 is a standalone product that does not require Express RTM to be already installed, so you can install it on a clean machine. However if you choose to install Express SP1 on a machine that currently has RTM, your RTM version will automatically be uninstalled and replaced with the SP1 version. Also note that there are a couple installation behavioral limitations for SP1 Beta: Express SP1 Beta cannot be installed on top of a higher level SKU of Visual Studio (e.g. if you have Visual Studio Standard RTM on your machine, you will not be able to install VWD Express SP1 Beta); in addition, if you have a machine with both Express and Visual Studio installed, if you install the SP1 patch for Visual Studio, your Express SKU will not function properly.
JScript Formatting
Your JScript code can now be formatted in both inline script blocks and .js pages. See linked blog post for additional details on this new feature added for SP1.

More Support for External JScript Libraries
SP1 includes support for the intellisense engine to work with external libraries jQuery, Ext, and Prototype. For more details on these fixes, please see our jQuery blog post or our Ext JS bog post.

Dynamic Data Templates
The .NET framework 3.5 SP1 now has support for Dynamic Data and the Entities framework. As a part of Visual Studio SP1, we’ve added new templates for both web site and WAP to get you started working with these features. If you’re interested in learning more about Dynamic Data, you can visit the MSDN code gallery site for Dynamic Data. You can also use that site to download the latest releases and give feedback on the feature. Note that the templates that come with SP1 do not include the Dynamic Data wizard, which is available for download on the site.

SQL Server 2008 Support
We have added support for SQL Server 2008 in Visual Studio 2008. Specifically here is what we’ve added:
· Visual Web Developer Express now comes with the SQL Server 2008 Express Beta
· We now support drag-drop of SQL 2008-specific data types in the designer from the Server Explorer – examples include DateTime2, DateTimeOffset, Date, and Time.
· The control designers and wizards for SqlDataSource and ObjectDataSource also support the above SQL Server 2008 data types
· You can use the Database Publishing Wizard in Visual Studio (right-click a node in Server Explorer, and choose “Publish to provider…”) to publish to and from a SQL Server 2008 database
![clip_image008[4]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/VisualStudio2008SP1Beta_A074/clip_image008%5B4%5D_thumb.jpg)
WCF Renaming Support
We now have proper renaming support for WCF classes inside of your Web Sites and Web Application Projects. If you rename your class, interface, or namespace of your WCF service, we now automatically fix up the web.config and SVC file so your web sites will build and work at run-time.
![clip_image010[4]](http://blogs.msdn.com/blogfiles/webdevtools/WindowsLiveWriter/VisualStudio2008SP1Beta_A074/clip_image010%5B4%5D_thumb.jpg)
IIS Module and Handler Templates
We have added two new templates in WAP projects and class libraries—one for an IIS module and one for an IIS handler. For more information on development using these, check out Mike Volodarsky’s post on advanced Web server deployment and development with IIS 7.0 and ASP.NET.
Bug Fixes:
We have many areas in which we fixed bugs: Performance, HTML Editor, Jscript, CSS, Designer, and the Project system. Below you’ll find a more in-depth description of many of the improvements we’ve made in each area:
Performance:
All performance hot fix changes are automatically a part of SP1. See http://blogs.msdn.com/webdevtools/archive/2008/02/09/downloadable-hotfix-performance-and-editor-fixes-for-microsoft-visual-studio-2008-and-visual-web-developer-express-2008.aspx for more information on the fixes here. In addition to the performance fixes in the hot fix changes, we have added the following fix seen below.
Note that you may still experience poor performance when typing in design view or during design/source view switch, as these have not been addressed fully in Beta.
| Issue |
Designer load is extremely slow when assemblies are missing. |
| Description |
In a web site or WAP that references assemblies that are not present in your GAC or bin, changing to design view is extremely slow, and can make the IDE appear to hang if there are many instances of controls on the page that rely on assemblies that are missing. |
| Resolution |
This should now be a quick operation |
| Link |
None |
CSS:
| Issue |
CSS Formatting includes extra spaces. |
| Description |
When you format your CSS document and you have a URL in quotes, extra spaces were inserted prior to the URL. An example is: background: url('Images/myBackground.jpg' ); inserting would cause background: url(' Images/myBackground.jpg' ). |
| Resolution |
This should now be a quick operationNo spaces are inserted on document formatting |
| Link |
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=337653 |
JScript:
| Issue |
Add support for remote jscript files in intellisense |
| Description |
You were unable to load js from absolute URLs - Example: <script src="http://mydomain.com/file.js"> |
| Resolution |
You can now load Jscript files from absolute URLs, so you can refer to remote .js files on web servers and get intellisense on those files. |
| Link |
None |
Editor:
| Issue |
VB Snippets in inline web services do not properly insert import statements. |
| Description |
In an inline web service (not in a code behind page), if you choose to insert a snippet that requires an import, we used to add “<%@... %> statements |
| Resolution |
Proper code import statements are now added. |
| Link |
None |