|
|
These blog entries are written by industry experts and leaders. We consider this content to be a good read for any software developer or web technologist.
Browse by Tags
All Tags » IIS7 » Visual Studio » .NET (RSS)
-
MIX is a Microsoft web development conference we hold in Las Vegas each year. MIX tends to be a pretty fun event, both because it covers cutting edge content (we used MIX07 to announce our Silverlight plans), and also because it tends to attract a really diverse set of attendees (including both those who use Microsoft technology today, and a large % of attendees who don't). The conference structure includes a healthy blend of sessions and interactive panels, and the layout and organization is designed to facilitate great conversations. This year's MIX is being held March 5th-7th in Las Vegas. Ray Ozzie and I are both giving keynotes the first day of the event, and Steve Ballmer and Guy Kawasaki will be doing a keynote the second day of the event. The conference (and especially my keynote) is going to cover a lot of new web technology. Attendees will be able to attend sessions covering: - IE 8
- IIS 7.0
- ASP.NET (including ASP.NET 3.5, ASP.NET AJAX, ASP.NET MVC, and ASP.NET Dynamic Data)
- VS 2008 and Expression Studio
- WPF
- Silverlight 2
- And much more....
Channel 9 recently did an interview with me where I talked about some of these new technologies. In Part 1 of the interview I talked about IIS7, and in Part 2 of the interview I talked about ASP.NET, WPF and Silverlight 2. Register Soon Or You'll Miss Your Chance MIX is held at a smaller venue then some of our larger events like TechEd and PDC. This gives the conference a more intimate feel (which is fun). It also means that it sells out each year, and once it is sold out it is really sold out. Last year I received about 50 emails from people begging for tickets after it was full, and many people even flew to the event hoping to somehow be let in at the door (only to be unfortunately told they couldn't get in). Unfortunately because of size constraints (and fire marshal restrictions) once it is sold out there really are no more tickets to be had. Even my own team members get turned away if they haven't registered in time. This year's registration is filling up faster than any of the previous MIX conferences. If you want to attend I highly recommend registering really soon to ensure you can go. You can learn more about the event and register online here. Hope to see some of you there - it is going to be fun.... Scott 
|
-
I just arrived back from my trip from Asia, and decided to celebrate (since I'm jet-lagged and can't sleep) with a new post in my link-listing series. You can check out my ASP.NET Tips, Tricks and Tutorials page for links to popular articles I've done myself in the past. ASP.NET ASP.NET AJAX Visual Studio .NET -
Marshaling between Managed and Unmanaged Code: Yi Zhang and Xiaoying Guo from my team in Shanghai have written a great MSDN article that describes how to use the marshaling interop features of the CLR to call native code. One of the tools they highlight is an awesome P/Invoke Interop Assistant application they built that makes it much, much easier to generate p/invoke interop signatures when calling native methods. A must-have tool for anyone doing native/managed interop! IIS -
Microsoft Web Deployment Tool Technical Preview 1: Yesterday the IIS team posted the first preview of a new Microsoft Web Deployment tool. This tool works with both IIS6 and IIS7 and enables automated deployment, synchronization, and migrating of applications on web servers. If you are looking for a great way to automate the deployment of your ASP.NET applications then this tool is definitely one to check out. To learn more, read the walkthroughs at the bottom of this page (in particular the "Introduction to MS Deploy" one). This tool is awesome and should make automated deployment much easier. Hope this helps, Scott 
|
-
Here is the latest in my link-listing series. Also check out my ASP.NET Tips, Tricks and Tutorials page for links to popular articles I've done myself in the past. ASP.NET ASP.NET AJAX -
ASP.NET AJAX History How Do I Video: To learn more about the new ASP.NET AJAX history support, watch this great 15 minute video from Bertrand Le Roy of the ASP.NET team. He demonstrates how to AJAX enable an <asp:wizard> control, and then add history marker points to it. ASP.NET MVC -
Accessing Server Controls from CodeBehind with ASP.NET MVC Views: David Hayden has a good post that discusses a workaround for a bug with the current ASP.NET MVC CTP view templates - which prevents you from coding against server controls in view template code behind classes. You can right-click on the MVC view files and select "Convert to Web Application" to fix it. Alternatively, you can download updated MVC Templates that Troy Goode recently posted here. This issue will be fixed with the next MVC update. Visual Studio IIS 7.0 Hope this helps, Scott 
|
-
Last week we shipped Visual Studio 2008 and .NET 3.5. This release is a big one for .NET, and delivers a ton of new capabilities and improvements for web, client, office and mobile development. Over the next few months we'll be delivering a series of additional products that build on top of this VS 2008 and .NET 3.5 foundation, and make .NET development even better. Below is a road-map of some of the upcoming initiatives and releases for .NET web development that my team is currently working on for the months ahead: Releasing the Source Code for the .NET Framework Libraries We announced last month that we'll provide the ability for developers to download and browse the source code of the .NET Framework libraries, as well as enable integrated source debugging of them using Visual Studio 2008. You can learn more about this in my blog post here. We are finishing up the final deployment of the source servers that host this now, and will be publishing instructions on how to enable the integrated debugging experience within Visual Studio 2008 shortly. I'll blog detailed steps on how to turn this feature on once it is available. ASP.NET 3.5 Extensions Release VS 2008 and .NET 3.5 include a ton of new features for ASP.NET development. We are planning to deliver even more ASP.NET functionality next year with a "ASP.NET 3.5 Extensions" release. The first public preview of this will be available for download next week on the web. Next week's ASP.NET 3.5 Extensions preview release will include: - ASP.NET MVC: This model view controller (MVC) framework for ASP.NET provides a structured model that enables a clear separation of concerns within web applications, and makes it easier to unit test your code and support a TDD workflow. It also helps provide more control over the URLs you publish in your applications, and more control over the HTML that is emitted from them. You can learn more about it from Part 1 of my ASP.NET MVC Tutorial series. I'm hoping to find time this weekend to write and post Part 2 of the series.
- ASP.NET AJAX Improvements: New ASP.NET AJAX features in the ASP.NET 3.5 Extensions release will include better browser history support (back/forward button integration, and server-side history management support via a new <asp:history> server control), improved AJAX content linking support with permalinks, and additional JavaScript library improvements.
- ASP.NET Dynamic Data Support: The ASP.NET 3.5 Extensions release will deliver new features that enable faster creation of data driven web sites. It provides a rich scaffolding framework, and enables rapid data driven site development using both ASP.NET WebForms and ASP.NET MVC.
- ASP.NET Silverlight Support: With the ASP.NET 3.5 Extensions release we'll deliver support for easily integrating Silverlight within your ASP.NET applications. Included will be new controls that make it easy to integrate Silverlight video/media and interactive content within your sites.
- ADO.NET Data Services: In parallel with the ASP.NET Extensions release we will also be releasing the ADO.NET Entity Framework. This provides a new modeling framework that enables developers to define a conceptual model of a database schema that closely aligns to a real world view of the information. We will also be shipping a new set of data services (codename "Astoria") that make it easy to expose REST based API endpoints from within your ASP.NET applications.
Silverlight 2.0 Release Two months ago we shipped Silverlight 1.0 for Mac and Windows, and announced our plans to deliver Silverlight on Linux. Silverlight 1.0 is focused on enabling rich media scenarios in a browser, and supports a JavaScript/AJAX programming model. Next year we will be releasing a major update of Silverlight that focuses on enabling rich Internet applications. This release will include a cross-platform, cross-browser version of the .NET Framework, and will enable a rich .NET development platform in the browser. Earlier this year we shipped an early Alpha containing some of the basic functionality of the release. Our next public preview will add considerably to this feature set. Some of the new .NET specific features in the next public Silverlight preview will include: -
WPF UI Framework: The current Silverlight Alpha release only includes basic controls support and a managed API for UI drawing. The next public Silverlight preview will add support for the higher level features of the WPF UI framework. These include: the extensible control framework model, layout manager support, two-way data-binding support, and control template and skinning support. The WPF UI Framework features in Silverlight will be a compatible subset of the WPF UI Framework features in last week's .NET Framework 3.5 release. -
Rich Controls: Silverlight will deliver a rich set of controls that make building Rich Internet Applications much easier. The next Silverlight preview release will add support for core form controls (textbox, checkbox, radiobutton, etc), built-in layout management controls (StackPanel, Grid, etc), common functionality controls (TabControl, Slider, ScrollViewer, ProgressBar, etc) and data manipulation controls (DataGrid, etc). -
Rich Networking Support: Silverlight will deliver rich networking support. The next Silverlight preview release will add support for REST, POX, RSS, and WS* communication. It will also add support for cross domain network access (so that Silverlight clients can access resources and data from any trusted source on the web). -
Rich Base Class Library Support: Silverlight will include a rich .NET base class library of functionality (collections, IO, generics, threading, globalization, XML, local storage, etc). The next Silverlight preview release will also add built-in support for LINQ to XML and richer HTML DOM API integration. Previously we've been referring to this .NET-enabled Silverlight release as "Silverlight V1.1". After stepping back and looking at all the new features in it (the above list is only a subset - there are many more we aren't sharing yet), we've realized that calling it a point release doesn't really reflect the true nature of it. Consequently we have decided to change the name and refer to it as "Silverlight V2.0" going forward. We will be releasing a Beta of Silverlight 2.0 in Q1 of 2008. This Beta will support a Go-Live license that enables developers to begin building and deploying Silverlight 2.0 applications. We will also be releasing a free Visual Studio 2008 tools update that provides great Silverlight 2.0 tools support within Visual Studio 2008, and enables developers to easily build Silverlight applications using any .NET language. We will be supporting Silverlight development with both the Visual Studio 2008 Standard/Professional products, as well as with the free Visual Studio 2008 Express editions. I'm going to be starting a new blog tutorial series in a few weeks that discusses how to build Silverlight 2.0 applications, and show off the new features in more depth. Stay tuned for more details soon. IIS 7.0 Early next year we'll ship the final release of IIS 7.0 as part of the Windows Server 2008 release. As I've blogged about in the past, IIS 7.0 is a major update of our web-server stack, and introduces a significantly new and improved extensibility, configuration and administration architecture. One of the really cool things about IIS 7.0 is that it is all nicely integrated with the .NET Framework, and enables you to use any .NET language to extend and customize the server. You can now easily do things in VB and C# that previously required writing a pretty gnarly C++ ISAPI. The deployment, management and administration of web applications on the server is also now nicely unified across IIS and ASP.NET. We will also shortly begin sharing details of a new web application deployment framework for IIS that enables you to easily automate the deployment of web applications on either a single server or across a web farm of machines. It will make it easy to version your web applications (including allowing you to quickly roll back to previous versions), as well as automatically provision them across multiple servers. It also enables the full automation of deployment tasks (including via both command-line and PowerShell scripting APIs). The combination of IIS7 with this web deployment framework will enable you to deploy and scale your ASP.NET server applications better than ever before. Summary Last week's VS 2008 and .NET 3.5 release was a huge step forward for .NET development. The release not only delivered a ton of great new language, runtime and tool features, but even more importantly provided a really solid foundation that we'll be building upon in the months and years ahead. Stay tuned to my blog for more details about each of the above releases. Hope this helps, Scott 
|
-
Here is the latest in my link-listing series. Also check out my ASP.NET Tips, Tricks and Tutorials page for links to popular articles I've done myself in the past. ASP.NET - Cleanup Inactive Anonymous Users: ASP.NET 2.0 has support for an optional feature called "anonymous users" - which enables you to optionally track and store profile data for non-authenticated users visiting your sites (read K. Scott Allen's article here for more details on how this works). Omar Al Zabir published this handy article that describes how to "clean up" this anonymous user data periodically to avoid storing it forever in your database.
ASP.NET AJAX Visual Studio -
SQL Database Publishing Wizard Now in VS 2008: One of the post-Beta2 features that we are adding for the final VS 2008 release is the inclusion of a SQL database publishing wizard inside Visual Studio. This will be supported in both the free Visual Web Developer Express edition as well as the full Visual Studio, and provides an easy way to script out your database schema and data to .SQL files. You can then copy these files to a remote hoster to deploy a database. You can learn more about how this works from my earlier posts here and here which describes how to use a previous standalone tool with this functionality (all of this functionality is now built-in to VS 2008). Silverlight IIS 7.0 -
Using LINQ with Microsoft.Web.Administration: Carlos from the IIS7 dev team has a really cool blog post that shows how you can use LINQ with .NET 3.5 to easily query and manipulate the new web server administration API introduced with IIS7. For more information on this new API, you can also read an old post of mine here. Hope this helps, Scott 
|
-
People who use VS 2005 to debug ASP.NET applications running in IIS7 on Windows Vista can encounter one of the following error messages when they press F5 to auto-attach the debugger in the IDE: - "An authentication error occurred while communicating with the web server."
- "Debugging failed because integrated Windows authentication is not enabled."
- "Authentication error occurred while communicating with the web server. Try disabling 'Digest authentication'"
The above errors occur because of the way that VS 2005 looks up the Process ID of the IIS7 worker process that ASP.NET is running within. Specifically, when you use F5 to "auto attach" the debugger with Visual Studio it sends an HTTP request to ASP.NET using Windows Authentication to retrieve the worker process details. This works fine if you have Windows Authentication enabled on your web-server, and are using Windows Authentication as the primary authentication method for your web application. It runs into problems, though, in a couple of circumstances: - If you have forms-auth enabled in ASP.NET and are running in "integrated mode" on the IIS7 web-server. This ends up blocking the process handler.
- If you don't have the windows authentication module installed on your web-server (it is now an optional component).
- If you are running on Windows Vista Home (which doesn't support the windows authentication module).
Patch Download Available To fix the above cases which block F5 "auto-attaching" from working, we recently released a public hotfix for Visual Studio 2005. It addresses each of the above problem causes. You can download the hotfix patch for free here. Once you install it, your Visual Studio F5 auto-attach behavior will work just fine. You can read more about the patch and issues it fixes in the KB article here, and the blog posts here and here. If you have any problems installing the patch or find that you still see issues after you install it, you'll want to contact Microsoft product support for assistance and they'll help debug it further. Calls to Microsoft Product Support are free if they are related to a product bug (either a QFE HotFix request or a product bug you are running into). You can find details on how to contact Microsoft product support on this page (it allows you to lookup the local phone number to use by country). How to Manually Attach a Debugger to a Process I have helped a few people workaround this issue before the patch was available. One of the things I realized in doing so was that a lot of developers don't realize all of the options that are available when debugging applications, and the different ways that you can use Visual Studio to debug a process/application. When you press F5 within Visual Studio (the Debug->Start Debugging menu item) you are telling Visual Studio to start up the application and automatically attach the debugger to it. An alternative approach that you can also use to debug an already running application is to use the "Debug->Attach to Process..." menu item. When you select "Debug->Attach to Process..." it will bring up a dialog that shows you the running processes on your computer (you can also type in the IP address of a remote computer to debug): If you want to debug an ASP.NET application running using IIS, make sure to select the "Show processes in all sessions" checkbox (since IIS runs as a service on Windows and not under your local account). You should then find w3wp.exe worker processes listed (which is the name of the IIS worker processes on IIS6 and IIS7). Double clicking on any process will cause Visual Studio to attach the debugger to it - at which point all breakpoints you have set will fire and you can debug a process just like you would by launching it with F5. This works for both web applications and client applications, and can be very useful when you already have an application running. Note that you no longer have to attach this way if you have the hotfix above installed - but it is a useful approach to know nonetheless. Hope this helps, Scott 
|
|
|
|