<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WebProNews &#187; ASP.NET</title>
	<atom:link href="http://www.webpronews.com/tag/asp-net/feed" rel="self" type="application/rss+xml" />
	<link>http://www.webpronews.com</link>
	<description>Breaking News in Tech, Search, Social, &#38; Business</description>
	<lastBuildDate>Sun, 19 May 2013 19:41:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Microsoft Releases Windows Azure SDK 2.0 For .NET</title>
		<link>http://www.webpronews.com/microsoft-releases-windows-azure-sdk-2-0-for-net-2013-05</link>
		<comments>http://www.webpronews.com/microsoft-releases-windows-azure-sdk-2-0-for-net-2013-05#comments</comments>
		<pubDate>Fri, 10 May 2013 12:58:10 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Azure]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=229239</guid>
		<description><![CDATA[In its latest earnings report, Microsoft said Windows Azure and related products hit $1 billion in sales. It shows that Microsoft&#8217;s cloud platform is starting to really take off. In its efforts to get more developers to use Azure, Microsoft &#8230;]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.webpronews.com/microsoft-reports-20-49-billion-in-revenue-cfo-leaves-2013-04">In its latest earnings report</a>, Microsoft said Windows Azure and related products hit $1 billion in sales. It shows that Microsoft&#8217;s cloud platform is starting to really take off. In its efforts to get more developers to use Azure, Microsoft has released some new tools for its Azure SDK. </p>
<p><a href="http://weblogs.asp.net/scottgu/archive/2013/04/30/announcing-the-release-of-windows-azure-sdk-2-0-for-net.aspx">Microsoft announced</a> in early May that version 2.0 of its Windows Azure SDK for .NET was finally available to all. The SDK brings with it a number of new features that are sure to delight those who host .NET Web sites on the Azure platform. </p>
<li><strong>Web Sites:</strong> Visual Studio Tooling updates for Publishing, Management, and for Diagnostics</li>
<li><strong>Cloud Services:</strong> Support for new high memory VM sizes, Faster Cloud Service publishing &#038; Visual Studio Tooling for configuring and viewing diagnostics data</li>
<li><strong>Storage:</strong> Storage Client 2.0 is now included in new projects &#038; Visual Studio Server Explorer now supports working with Storage Tables</li>
<li><strong>Service Bus:</strong> Updated client library with message pump programming model support, support for browsing messages, and auto-deleting idle messaging entities</li>
<li><strong>PowerShell Automation:</strong> Updated support for PowerShell 3.0, and lots of new PowerShell commands for automating Web Sites, Cloud Services, VMs and more.</li>
<p>You should <a href="http://weblogs.asp.net/scottgu/archive/2013/04/30/announcing-the-release-of-windows-azure-sdk-2-0-for-net.aspx">check out the full blog post</a> for more details as Microsoft&#8217;s Scott Guthrie explains all of the new features in full detail. </p>
<p>As for availability, you can grab the Windows Azure SDK 2.0 for .NET over at the <a href="http://www.windowsazure.com/en-us/develop/net">Windows Azure .NET Developer Center</a>. It&#8217;s also open source so you can poke and prod your way through the code over at <a href="https://github.com/WindowsAzure/azure-sdk-for-net">GitHub</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/microsoft-releases-windows-azure-sdk-2-0-for-net-2013-05/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET and Web Tools 2012.2 Now Available</title>
		<link>http://www.webpronews.com/asp-net-and-web-tools-2012-2-now-available-2013-03</link>
		<comments>http://www.webpronews.com/asp-net-and-web-tools-2012-2-now-available-2013-03#comments</comments>
		<pubDate>Thu, 07 Mar 2013 21:42:41 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[Web Tools]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=220232</guid>
		<description><![CDATA[The world of Web development is changing rapidly. To keep up, Microsoft has been making incremental changes to ASP.NET. The latest update to the framework brings changes and additions to every member of the ASP.NET family. Micrososft recently released ASP.NET &#8230;]]></description>
			<content:encoded><![CDATA[<p>The world of Web development is changing rapidly. To keep up, Microsoft has been making incremental changes to ASP.NET. The latest update to the framework brings changes and additions to every member of the ASP.NET family. </p>
<p>Micrososft recently released <a href="http://weblogs.asp.net/jgalloway/archive/2013/02/18/announcing-the-asp-net-and-web-tools-2012-2-release.aspx">ASP.NET and Web Tools 2012.2</a> to the general coding public. The release contains new templates and tooling ASP.NET Web Forms, ASP.NET MVC, ASP.NET Web API and the rest of the ASP.NET family. Microsoft put together a little video to go over what&#8217;s in the latest release: </p>
<p><center><iframe style="height:288px;width:512px" src="http://channel9.msdn.com/posts/Introduction-to-the-ASPNET-and-Web-Tools-20122-Release/player?w=512&#038;h=288" frameBorder="0" scrolling="no" ></iframe></center></p>
<p>If you don&#8217;t like watching informative videos, here&#8217;s a quick rundown of the new features in this latest release. First, Web Forms got a a new FriendlyURL package that adds the following benefits: </p>
<li>It automatically maps URLs to ASPX pages</li>
<li>It automatically passes route values to controls with a nice bindable syntax</li>
<p>The ASP.NET Web API gets the following three new features: </p>
<li>Automatic Help Page generation.</li>
<li>Tracing &#8211; Everything in the pipeline is output to the System.Diagnostics.Trace, so you can read it in the Visual Studio output window as well as any registered Trace Listener.</li>
<li>OData &#8211; Lots of new stuff here, including routing and query validation</li>
<p>ASP.NET MVC gets a few new templates and the following three features: </p>
<li>The Facebook template makes it easy to create full Facebook apps. Your users log in on Facebook, approve your requests to access their Facebook content, and then your app can interact with their social graph.</li>
<li>There&#8217;s a lightweight Single Page Application template based on Knockout.js and ASP.NET Web API.</li>
<li>We&#8217;ve made it possible to create new ASP.NET MVC templates using a Visual Studio extension (VSIX). Expect to see a lot more templates from us and others in the community!</li>
<p>As for Web Tools, here&#8217;s some of the highlights that you&#8217;ll see in practice in the above video: </p>
<li>Page Inspector now has live sync, so when you update CSS you&#8217;ll see it update immediately.</li>
<li>There&#8217;s IntelliSense support for Knockout bindings, CoffeeScript, and more.</li>
<li>The integrated publishing includes single file publish and compare. That means that you can edit a single file and push it out, or even compare your local changes against the live production version.</li>
<p>You can <a href="http://asp.net/vnext">grab this latest release of ASP.NET</a> and any future release over at the official Web site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/asp-net-and-web-tools-2012-2-now-available-2013-03/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SignalR Is The Latest And Greatest Tool Available To ASP.NET Developers</title>
		<link>http://www.webpronews.com/signalr-is-the-latest-and-greatest-tool-available-to-asp-net-developers-2013-01</link>
		<comments>http://www.webpronews.com/signalr-is-the-latest-and-greatest-tool-available-to-asp-net-developers-2013-01#comments</comments>
		<pubDate>Wed, 16 Jan 2013 15:08:52 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[SignalR]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=209338</guid>
		<description><![CDATA[In November, Microsoft announced a number of features coming to its ASP.NET Web application framework over the next few months. One of the more prominent announcements was SignalR, a feature that adds &#8220;real-time functionality to Web applications using WebSockets and &#8230;]]></description>
			<content:encoded><![CDATA[<p>In November, Microsoft announced a number of features <a href="http://www.webpronews.com/microsoft-details-its-plans-for-the-future-of-asp-net-2012-11">coming to its ASP.NET Web application framework</a> over the next few months. One of the more prominent announcements was SignalR, a feature that adds &#8220;real-time functionality to Web applications using WebSockets and other down-level transports.&#8221; It&#8217;s available as a Release Candidate , but a Microsoft blogger is already showing off some tips and tricks on how to get the most out of it. </p>
<p>Microsoft blogger, Mike Brind, <a href="http://www.mikesdotnetting.com/Article/206/SignalR-And-Knockout-In-ASP.NET-Web-Pages-Using-WebMatrix">recently posted a pretty extensive tutorial</a> on his blog that goes into how developers will want to use SignalR in building ASP.NET Web pages with WebMatrix. First things first, however, he explains what SignalR is and what the new library can to accomplish: </p>
<blockquote><p><em>The web works on a Request-Response model. Browsers and other user agents make requests and web server provide a response to that request.The response is sent to the delivery address provided in the request by the user agent. And that is the natural order of things on the Web &#8211; servers can&#8217;t make responses without a request. For the most part, this is not an issue, but if you want to display real-time updates on your web page, you have needed to resort to techniques like repeatedly polling the server using AJAX to see if any changes had been made to data. Alternatively, you could use Comet technology, which keeps a persistent connection open between the server and the client. HTML5 introduced two new techniques &#8211; Server Sent Events and WebSockets. SignalR is a user-friendly wrapper around all these technologies that makes it a lot easier to create applications that require the real-time display of data. SignalR utilises HTML5 Web Sockets API where it is available, and falls back onto other technologies where they are not &#8211; Server Sent Events, Forever Frames or Long Polling, the last two of which are Comet techniques.</em></p></blockquote>
<p>Brind suggests that any interested developer obtain the prerelease version of SignalR via Visual Studio. He suggests using the Package Manager Console and installing it via the <em>Install-Package Microsoft.AspNet.SignalR -Pre</em> command. </p>
<p>From there, Brind explains the basics of SignalR including how you set up an application that uses the library. He says that an application is powered by a hub, which holds some similarities with a Controller in ASP.NET MVC. Those familiar with that should have little to no problem adopting SignalR into their own applications. </p>
<p>For the rest of the post, Brind gets into the nitty gritty of the code required to implement SignalR into your ASP.NET Web pages. His first example shows how to create a Chat window on a Web page using SignalR. The second example is a little more complicated as he combines SignalR with <a href="http://www.mikesdotnetting.com/Article/190/Using-Knockout-With-Razor-Web-Pages-In-WebMatrix-2">Knockout</a> to create a simple product listing page where users can view details about individual products. </p>
<p>You can check out both of Brind&#8217;s examples at <a href="https://github.com/mikebrind/SignalRSamples">his GitHub page</a>, and get refreshed on all the latest changes to SignalR at the <a href="http://weblogs.asp.net/davidfowler/archive/2012/11/11/microsoft-asp-net-signalr.aspx">official Web site. </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/signalr-is-the-latest-and-greatest-tool-available-to-asp-net-developers-2013-01/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Microsoft Details Its Plans For The Future Of ASP.NET</title>
		<link>http://www.webpronews.com/microsoft-details-its-plans-for-the-future-of-asp-net-2012-11</link>
		<comments>http://www.webpronews.com/microsoft-details-its-plans-for-the-future-of-asp-net-2012-11#comments</comments>
		<pubDate>Thu, 29 Nov 2012 14:18:24 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 8]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=204590</guid>
		<description><![CDATA[With the launch of Windows 8, Microsoft has been updating all of its development tools to help developers get the most out of the new OS. The company has shipped a number of products including Visual Studio 2012 and .NET &#8230;]]></description>
			<content:encoded><![CDATA[<p>With the launch of Windows 8, Microsoft has been updating all of its development tools to help developers get the most out of the new OS. The company has shipped a number of products including Visual Studio 2012 and .NET 4.5, but there&#8217;s still much to be done, especially with ASP.NET. </p>
<p>In late October, Microsoft finally unveiled its roadmap for proposed updates and additions to <a href="https://aspnet.codeplex.com/">ASP.NET and Web Tools 2012.2.</a> There&#8217;s a number of new features that developers can look forward to, but Microsoft warns that these additions are only in the planning stage now and may not see the light of day for some time. </p>
<p>First up is SignalR, a new addition to the ASP.NET family. Microsoft says that it adds &#8220;real-time functionality to web applications using WebSockets and other down-level transports.&#8221; The first release of SignalR will add item templates and hubs to an ASP.NET application and integrate with both ASP.NET MVC and ASP.NET Web API. You can find out more at the <a href="https://github.com/SignalR/SignalR">SignalR GitHub directory. </a></p>
<p>Speaking of Web API, Microsoft will be extending to add &#8220;richer OData functionality, expand support for Windows Store Apps and enable simple tracing and monitoring.&#8221; To be more specific, the following features will be added in the future: </p>
<li><strong>OData</strong> – Rich OData query support will be brought back using the new OData URI parser. Developers will be able to control OData query semantics. OData endpoints can be implemented over any data source using the new OData formatter, metadata controller, and modeling capabilities.</li>
<li><strong>Windows Store Support</strong> – Client side support for Windows Store Apps will be expanded. In addition to HttpClient class there will be support for using Web API formatters.</li>
<li><strong>Tracing</strong> – Developers and administrators need the ability to monitor and diagnose issues with Web API based services. Web API gives developers and administrators visibility into web APIs including simple tracing and support for integrated logging using System.Diagnostics, ETW, NLog and Log4Net.</li>
<li><strong>Help Page</strong> – Web API help page generation will make it easy to generate rich, web-based documentation for your web APIs including the resource URIs, allowed HTTP verbs, expected parameters, and sample message payloads.</li>
<p>MVC is also receiving a number of new additions in the future. These updates are intended to help developers build ASP.NET applications that &#8216;feature Azure, Single Page Applications, real time updates using SignalR and Facebook integration.&#8221; The proposed updates include: </p>
<li><strong>Single Page Application (SPA) Template and Tooling</strong> – We are working on the next generation version of support for writing rich interactive applications also known as Single Page Applications, SPA. In this release we are building an MVC-based template that uses Knockout.js and Web API controllers to show many of the best practices for building such an application. This will include tooling updates for Visual Studio that make client side development easier with support for LESS, CoffeeScript, syntax highlighting for Knockout.js, HandleBars, Mustache, Paste JSON as Classes, and more. For information on our design goals check this PowerPoint deck. </li>
<li><strong>Facebook</strong> – New project template for making Facebook applications using ASP.NET. Developers will be able to go to the Facebook Developer Center and get an app. Then apply the app keys inside the template, define which Facebook user fields your app requires and the template will handle authentication, app permissions, keep user data up to date and provide easy access to the C# Facebook SDK.</li>
<li><strong>MVC Mobile Templates</strong> &#8211; The RTM versions of Mobile templates contained caching bugs. The caching problem has been fixed in this version.</li>
<p>On a final note, Microsoft is looking to add an ASP.NET membership system. Microsoft says the new system would &#8220;provide first class support for modern methods of authentication (such as OpenAuth/OpenID), as well as local username and password.&#8221; The new system will also allow developers to &#8220;easily change the underlying storage mechanism to SQL server, Azure Table or any other store of choice.&#8221; </p>
<p>Once again, it&#8217;s important to note that these plans are not set in stone, and can change. Microsoft welcomes any developer input at its <a href="http://aspnet.uservoice.com/forums/41199-general-asp-net">ASP.NET UserVoice site</a> to help determine the future of the development platform. You can help <a href="http://aspnetwebstack.codeplex.com/">contribute to the future</a> of ASP.NET here as Microsoft <a href="http://www.webpronews.com/microsoft-makes-asp-net-open-source-2012-03">made it open source</a> back in March. You can also download the latest Fall 2012 ASP.NET update preview <a href="http://www.asp.net/vnext">here. </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/microsoft-details-its-plans-for-the-future-of-asp-net-2012-11/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>OrcsWeb Now Offers Complete ASP.NET 4.5 Support</title>
		<link>http://www.webpronews.com/orcsweb-now-offers-complete-asp-net-4-5-support-2012-10</link>
		<comments>http://www.webpronews.com/orcsweb-now-offers-complete-asp-net-4-5-support-2012-10#comments</comments>
		<pubDate>Mon, 01 Oct 2012 13:35:18 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[ASP.NET 4.5]]></category>
		<category><![CDATA[OrcsWeb]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Server]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=194908</guid>
		<description><![CDATA[OrcsWeb is one of the leading providers of Microsoft Windows-based cloud and dedicated server hosting solutions. To remain at the top, the company must remain up-to-date on all the latest technologies. Their quick adoption of the latest version of ASP.NET &#8230;<br /><a href="http://aj.600z.com/aj/136480/0/cc?z=1"><img src="http://aj.600z.com/aj/136480/0/vc?z=1&dim=105992&kw=&click=" width="615" height="80" border="0"></a>]]></description>
			<content:encoded><![CDATA[<p>OrcsWeb is one of the leading providers of Microsoft Windows-based cloud and dedicated server hosting solutions. To remain at the top, the company must remain up-to-date on all the latest technologies. Their quick adoption of the latest version of ASP.NET only cements their dedication.  </p>
<p>OrcsWeb announced that ASP.NET 4.5 is now available across all platforms &#8211; cloud and dedicated. They worked closely with Microsoft throughout the beta stage to make sure their .NET 4.5 support was perfect. Users can expect new features, increased performance and control, and other benefits with the latest release of .NET. </p>
<p>“ASP.NET 4.5 is the most exciting release of the .NET framework yet. Microsoft has made significant performance improvements in both application startup and memory utilization that customers will recognize immediately,” according to Jeff Graves, Director of Technology. “Security improvements help web developers easily protect their application from malicious users with unobtrusive validation and the baked-in AntiXSS library. Asynchronous HTTP calls are much easier to manage with the new await command. The best part is that OrcsWeb clients can take full advantage of these features today, across all of our platforms.” </p>
<p>Here are the key improvements that users will find built into .NET 4.5: </p>
<li>ASP.NET 4.5 uses bundling (which combines separate JavaScript files for faster loading) and minification (which reduces the size of JavaScript and CSS files by removing unneeded characters).</li>
<li>ASP.NET 4.5 can read, write, and flush a stream asynchronously. This asynchronicity lets you send data to a client incrementally without tying up operating system threads.</li>
<li>The new async and await keywords make it easier to write asynchronous HTTP modules and asynchronous HTTP handlers.</li>
<li>ASP.NET 4.5 provides ways to read un-validated request data so that you can allow users to pass markup for selected fields or pages.</li>
<p>It should be noted that all new OrcsWeb clients will receive .NET 4.5 by default. All existing Windows cloud server or dedicated server clients can either install the upgrade themselves, or contact OrcsWeb for a professional installation. You can find more information on <a href="http://www.orcsweb.com/blog/terri/installing-asp-net-4-5-on-windows-server-20082008-r2-and-iis-77-5/">installing .NET 4.5</a> yourself here. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/orcsweb-now-offers-complete-asp-net-4-5-support-2012-10/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Makes ASP.NET Open Source</title>
		<link>http://www.webpronews.com/microsoft-makes-asp-net-open-source-2012-03</link>
		<comments>http://www.webpronews.com/microsoft-makes-asp-net-open-source-2012-03#comments</comments>
		<pubDate>Wed, 28 Mar 2012 13:50:21 +0000</pubDate>
		<dc:creator>Zach Walton</dc:creator>
				<category><![CDATA[Developer]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Razor]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=128805</guid>
		<description><![CDATA[Microsoft is becoming increasingly more and more one of the good guys within the tech community. Their latest move is definitely going to make a lot of developers happy. Scott Hanselman, a Microsoft employee, announced Tuesday that Microsoft is making &#8230;]]></description>
			<content:encoded><![CDATA[<p>Microsoft is becoming increasingly more and more one of the good guys within the tech community. Their latest move is definitely going to make a lot of developers happy. </p>
<p>Scott Hanselman, a Microsoft employee, announced Tuesday that Microsoft is <a href="http://www.hanselman.com/blog/ASPNETMVC4ASPNETWebAPIAndASPNETWebPagesV2RazorNowAllOpenSourceWithContributions.aspx?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+ScottHanselman+%28Scott+Hanselman+-+ComputerZen.com%29">making ASP.NEt MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 all open source</a> under the Apache 2.0 license. These technologies have been open source for a while now, but they weren&#8217;t &#8220;really&#8221; open source. What this means is that the team didn&#8217;t take contributions from the development community, now they are. </p>
<p>The open source movement will allow developers to directly submit fixes and unit tests to Microsoft. They list the things that outside developers can now take part in:</p>
<blockquote><p><em>Find a bug? Send a unit test or fix.<br />
Think our coverage isn’t sufficient? Submit a unit test.<br />
Got a feature idea? Get involved more deeply with the developers and help write it.</em></p></blockquote>
<p>When you submit a fix, the developers will test it against their current standards. They&#8217;re keeping this process transparent as developers will be able to see Microsoft&#8217;s &#8220;developers&#8217; checkins to the product out in the open.&#8221; </p>
<p>All this doesn&#8217;t mean that Microsoft is going to reduce support for ASP.NET. In fact, they claim to have more developers working on these programs more than ever before.  The open source movement just makes it easier for developers to collaborate on these programs. </p>
<p>ASP.NET Web Forms are not open source, however, and Microsoft has a valid reason for that. Web Forms is part of System.Web.dll which the Windows Server OS relies upon. It can&#8217;t be replaced as easily with newer versions. </p>
<p>If you want to get to work right now, the source code is <a href="http://aspnetwebstack.codeplex.com/">now available at codeplex</a>. For more information on this open source initiative, check out <a href="http://www.asp.net/open-source">Microsoft&#8217;s page for it.</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/microsoft-makes-asp-net-open-source-2012-03/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When To Assembly</title>
		<link>http://www.webpronews.com/when-to-assembly-2007-02</link>
		<comments>http://www.webpronews.com/when-to-assembly-2007-02#comments</comments>
		<pubDate>Wed, 07 Feb 2007 15:30:59 +0000</pubDate>
		<dc:creator>Mads Kristensen</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=35063</guid>
		<description><![CDATA[<p>Over the years, I've used a lot of third-party components and self built control libraries. It an easy way to add functionality to your code projects - just reference the dll file and that's it. This encapsulated functionality comes in most cases at a high cost.  Imaging that you have an assembly of your homemade ASP.NET controls that you wish to use in your new website. In there you have a custom version of the GridView control that does something smart. On your new website this is exactly what you need, but you need it to behave a little different in a certain situation.]]></description>
			<content:encoded><![CDATA[<p>Over the years, I&#8217;ve used a lot of third-party components and self built control libraries. It an easy way to add functionality to your code projects &#8211; just reference the dll file and that&#8217;s it. This encapsulated functionality comes in most cases at a high cost.  Imaging that you have an assembly of your homemade ASP.NET controls that you wish to use in your new website. In there you have a custom version of the GridView control that does something smart. On your new website this is exactly what you need, but you need it to behave a little different in a certain situation.   You then have to create a new class that inherits from the custom GridView and extend it by overriding a couple of methods. You don&#8217;t need any of the other controls in that assembly.  Now you are faced with a couple inconveniences.  &bull; You reference an entire dll file just to use one class, and  &bull; Still have to create an extension class for that control  To make the customization easier, you could open the control project and edit the custom GridView and expose the changes as properties instead. That would take some time and testing, just so that one particular website can use the added properties.  <b></p>
<p>Pull it out</b> If you instead pulled the CustomGridView.cs file out of the control library and stuck it into the App_Code folder and customized it directly, you would gain multiple things.   &bull; Easier debugging  &bull; Less code needed to customize the custom GridView  &bull; Reduce the overhead of the referenced dll file  This approach is only beneficial if the control doesn&#8217;t make use of other classes in the assembly, such as interfaces, base classes and helper classes.  <b></p>
<p>Repository</b> The way I like to keep my self-contained classes is in a code repository, which basically are some folders on my hard drive. Whenever I need one of the classes, I simple copy it into the project and customize it if it needs to be. It&#8217;s the same kind of plug &#8216;n play functionality of the dll files, but in a much smaller scale.  This gives me the freedom to select a variety of different functionality out-of-the-box and still keep my project clean from unnecessary dll files. That makes them smaller, more transparent and easier to maintain. Class libraries  Sometimes it does make sense to build a class library instead of the loose files. However, there are rules to when this is beneficial. The rules are the ones I code by. It&#8217;s better to build a class library when:  &bull; The classes in the library are dependant of each other  &bull; The library has characteristics of a component  &bull; The library has to be distributed separately  I might have missed some other rules, but this is basically it. The point is that not all types of classes belong in a library and it&#8217;s a good idea to identify them as early as possible to avoid extra work down the line.</p>
<p>  <a href="http://madskristensen.dk/blog/CommentView,guid,d864aab9-9f4c-460e-a13e-e91e4e0a9bd1.aspx">Comments</a>  </p>
<p>Add to <a class="printMailTop" onclick="window.open('http://del.icio.us/post?v=4&#038;partner=wpn&#038;noui&#038;jump=close&#038;url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.title),'delicious','toolbar=no,width=700,height=400'); return false;" href="http://del.icio.us/post"><img border="0" src="http://images.ientrymail.com/webpronews/delicious-pic.png" alt="" /> Del.icio.us</a> | <a href="javascript:void window.open('http://digg.com/submit?phase=2&amp;url='+encodeURIComponent(window.location.href)+'&amp;ei=UTF-8','popup','width=520px,height=420px,status=0,location=0,resizable=1,scrollbars=1,left=100,top=50',0)"><img border="0" src="http://images.ientrymail.com/webpronews/digg-pic.png" alt="" /> Digg</a>  | <a href="javascript:location.href='http://reddit.com/submit?url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title)"><img border="0" src="http://images.ientrymail.com/webpronews/reddit.png" alt="" /> Reddit</a> | <a href="javascript:location.href='http://www.furl.net/storeIt.jsp?u='+encodeURIComponent(document.location.href)+'&amp;t='+encodeURIComponent(document.title)+' '"><img border="0" src="http://images.ientrymail.com/webpronews/furl-pic.png" alt="" /> Furl</a>  </p>
<p>Bookmark WebProNews: <a href="http://www.webpronews.com"><img border="0" src="http://images.ientrymail.com/webpronews/wpn-readit.jpg" alt="" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/when-to-assembly-2007-02/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET: Working with Query Strings</title>
		<link>http://www.webpronews.com/aspnet-working-with-query-strings-2007-01</link>
		<comments>http://www.webpronews.com/aspnet-working-with-query-strings-2007-01#comments</comments>
		<pubDate>Tue, 30 Jan 2007 14:18:10 +0000</pubDate>
		<dc:creator>Mads Kristensen</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[comments]]></category>
		<category><![CDATA[Delicious]]></category>
		<category><![CDATA[Digg]]></category>
		<category><![CDATA[query]]></category>
		<category><![CDATA[Reddit]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=34877</guid>
		<description><![CDATA[In many cases we write our ASP.NET logic around query strings in order to show the right product page or what not.
]]></description>
			<content:encoded><![CDATA[<p>In many cases we write our ASP.NET logic around query strings in order to show the right product page or what not.</p>
<p>The first thing we do is to check if the query string exists in the first place before we start using it. It could look like this:</p>
<p><code>if (Request.QueryString["id"] != null)<br />
{<br />
&nbsp;  // Do something with the querystring<br />
}</code></p>
<p>The only problem with the above check to see if the query string is null, is that we don&#8217;t take into consideration if the query string is filled or not. </p>
<p>That could lead to unhandled exceptions in the code. Instead we should check for query strings like this:</p>
<p><code>if (!String.IsNullOrEmpty(Request.QueryString["id"]))<br />
{<br />
&nbsp;  // Do something with the querystring<br />
}</code></p>
<p>Then there is the data type of the query string.</p>
<p>Our code might need an integer of 5 digits to get the right information from the database, so if we pass it a string we could end up with a data type mismatch exception. </p>
<p>So we do the check again more thoroughly:</p>
<p><code>if (!String.IsNullOrEmpty(Request.QueryString["id"]) &#038;&#038; Request.QueryString["id"].Length == 5)<br />
{<br />
&nbsp;  // Do something with the querystring<br />
}</code></p>
<p>Now we know that we get a query string suitable for further processing. </p>
<p>You can then do more precise data type checks using the TryParse method of most value types or by some other logic. </p>
<p><a href="http://www.madskristensen.dk/blog/CommentView,guid,f5e5799e-0afa-4e62-b0b6-f3caee3c1b1a.aspx" class="bluelink">Comments</a></p>
<p>Tag:   </p>
<p>Add to <a href="http://del.icio.us/post"    onclick="window.open('http://del.icio.us/post?v=4&#038;partner=wpn&#038;noui&#038;jump=close&#038;url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.t  itle),'delicious','toolbar=no,width=700,height=400'); return false;"   CLASS="printMailTop"><img src="http://images.ientrymail.com/webpronews/delicious-pic.png" border=0> Del.icio.us</a> | <a href="javascript:void   window.open('http://digg.com/submit?phase=2&#038;url='+encodeURIComponent(window.   location.href)+'&#038;ei=UTF-8','popup','width=520px,height=420px,status=0,location=0,resizable=1,scrollbars=1,left=100,top=50',0)"><img   src="http://images.ientrymail.com/webpronews/digg-pic.png" border=0> Digg</a> | <a href="javascript:location.href='http://reddit.com/submit?url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.title)"><img  src="http://images.ientrymail.com/webpronews/reddit.png" border=0>Reddit</a> | <a href="javascript:location.href='http://www.furl.net/storeIt.jsp?u='+encodeURIComponent(document.location.href)+'&#038;t='+encodeURIComponent(document.title)+ '   '"><img src="http://images.ientrymail.com/webpronews/furl-pic.png" border=0> Furl</a> </p>
<p> Bookmark WebProNews: <a href="http://www.webpronews.com"><img src="http://images.ientrymail.com/webpronews/wpn-readit.jpg" border=0></a></p>
<p>Mads Kristensen currently works as a Senior Developer at Traceworks located<br />
in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in<br />
2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and<br />
web services in his daily work as well. A true .NET developer with great passion for the simple solution.</p>
<p>http://www.madskristensen.dk/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/aspnet-working-with-query-strings-2007-01/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ASP.NET: Access Client Info Server-side</title>
		<link>http://www.webpronews.com/aspnet-access-client-info-serverside-2007-01</link>
		<comments>http://www.webpronews.com/aspnet-access-client-info-serverside-2007-01#comments</comments>
		<pubDate>Mon, 29 Jan 2007 20:45:10 +0000</pubDate>
		<dc:creator>Mads Kristensen</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Access]]></category>
		<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=34870</guid>
		<description><![CDATA[I was playing around with HTTP request headers and for some reason started thinking about how limited information they provide about the requesting browser.
]]></description>
			<content:encoded><![CDATA[<p>I was playing around with HTTP request headers and for some reason started thinking about how limited information they provide about the requesting browser.</p>
<p>All they really provide is the user agent string which provide very little information about the visitors platform, and that&#8217;s about it. If they also provided screen resolution and available browser window real estate, it would start being useful for other scenarios than we are used to.</p>
<p>Then I started thinking about a way to provide ASP.NET web applications with data retrieved from the browser without interfering with the browsing experience. I found that the only way to get client information from JavaScript transferred to server-side variables is to do redirection, but that is not acceptable. Well, at least I thought. It is actually possible to do redirections without the browser registers it in its history so the back button would act as nothing happened.</p>
<p>This means that it should be possible to retrieve the information in a way that is totally transparent to the visitor. In other words, the website appear to act 100% as usual. If you don&#8217;t believe me, read on and I&#8217;ll tell you how it&#8217;s done.</p>
<p><center> <img src="http://images.ientrymail.com/webpronews/clientstats.jpg"> </center></p>
<p>If it is using JavaScript to gather the information it also means that all information you can possibly retrieve from JavaScript can be transferred to the server. In this version I&#8217;ve implemented the properties you can see in the image above. It is very easy to add more. The code comments tells how.</p>
<p><b>How it works</b></p>
<p>To do the trick we need an HttpModule and HttpHandler. The module&#8217;s job is to expose the client-side variables to the ASP.NET code while the HttpHandler fills them with data from the browser.</p>
<p>At every request to an .aspx page the module checks if the variables have been set for the requesting visitor. If the page is the first one the visitor hits, the module write a small JavaScript to the <head> tag that collects the information we need and does a silent redirection to the HttpHandler. The handler registers the information sent from the JavaScript and stores it in session variables. Afterwards it redirects back to the original requested page without the visitor noticing any redirection has taken place.</p>
<p>Before you think it sounds too complex, let me assure you that it is very simple. Not only is it simple, it is also plug &#8216;n play so you can easily implement it into any existing web application &#8211; no code required. I&#8217;ve tested it in IE 7, Firefox 2 and Opera 9 all on Windows and it works perfectly. This might be the coolest thing I&#8217;ve ever developed.</p>
<p><b>Implementation</b></p>
<p>Download the ClientStats.cs below and put it in the App_Code folder of your website. Then add the following lines to the web.config&#8217;s &lt;system.web&gt; section:</p>
<p><code>&lt;httpModules&gt;</p>
<p>&nbsp;  &lt;add type="ClientStats" name="ClientStats"/&gt;</p>
<p>&lt;/httpModules&gt;</p>
<p>&lt;httpHandlers&gt;</p>
<p>&nbsp;  &lt;add verb="*" path="*clientstats.aspx" type="ClientHandler" /&gt;</p>
<p>&lt;/httpHandlers&gt;</code></p>
<p>That is all there is needed to gain access to the properties of the ClientStats module.</p>
<p><b>Download</b></p>
<p><a href="http://www.madskristensen.dk/blog/ct.ashx?id=b7eaacee-9993-4313-aff1-c01a31069613&#038;url=http%3a%2f%2fwww.madskristensen.dk%2fblog%2fcontent%2fbinary%2fClientStats.zip" class="bluelink">ClientStats.zip (1,85 KB)</a></p>
<p><a href="http://www.madskristensen.dk/blog/CommentView,guid,b7eaacee-9993-4313-aff1-c01a31069613.aspx" class="bluelink">Comments</a></p>
<p>Tag:   </p>
<p> <a href="javascript:location.href='http://reddit.com/submit?url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.title)"><img  src="http://images.ientrymail.com/webpronews/reddit.png" border=0>Reddit</a> | <a href="javascript:location.href='http://www.furl.net/storeIt.jsp?u='+encodeURIComponent(document.location.href)+'&#038;t='+encodeURIComponent(document.title)+ '   '"><img src="http://images.ientrymail.com/webpronews/furl-pic.png" border=0> Furl</a> </p>
<p> Bookmark WebProNews: <a href="http://www.webpronews.com"><img src="http://images.ientrymail.com/webpronews/wpn-readit.jpg" border=0></a></p>
<p>Mads Kristensen currently works as a Senior Developer at Traceworks located<br />
in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in<br />
2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and<br />
web services in his daily work as well. A true .NET developer with great passion for the simple solution.</p>
<p>http://www.madskristensen.dk/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/aspnet-access-client-info-serverside-2007-01/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ASP.NET: Make GridView Control Accessible</title>
		<link>http://www.webpronews.com/aspnet-make-gridview-control-accessible-2007-01</link>
		<comments>http://www.webpronews.com/aspnet-make-gridview-control-accessible-2007-01#comments</comments>
		<pubDate>Thu, 25 Jan 2007 20:01:50 +0000</pubDate>
		<dc:creator>Mads Kristensen</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.webpronews.com/?p=34780</guid>
		<description><![CDATA[The GridView is a new web control in ASP.NET 2.0 and is an improvement of the old DataGrid.
]]></description>
			<content:encoded><![CDATA[<p>The GridView is a new web control in ASP.NET 2.0 and is an improvement of the old DataGrid.</p>
<p>One of the biggest issues with the DataGrid was the lack of standard compliance and accessibility. This has been fixed in the new GridView along with a lot of other things as well. </p>
<p>When setting the property UseAccessibleHeader = true, it replaces the &lt;td&gt; elements of the header row with the correct &lt;th&gt; which means table header. It also adds the scope property of these header elements making them more accessible.</p>
<p>For some strange reason, there is no property for setting the &lt;thead&gt;, &lt;tbody&gt; and &lt;tfoot&gt; elements which are more important from an accessibility point of view. There is however an easy way of adding these elements in C# and VB.NET.</p>
<p>Let&#8217;s add a simple GridView to our page like this:</p>
<p><code>&lt;asp:GridView runat="server" ID="gvFlowers" /&gt;</code></p>
<p>To add the extra elements, we need this simple method in the code-behind:</p>
<p><code>private void MakeAccessible(GridView grid)<br />
{<br />
&nbsp;&nbsp; if (grid.Rows.Count &gt; 0)<br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;  //This replaces &lt;td&gt; with &lt;th&gt; and adds the scope attribute<br />
&nbsp;&nbsp;  grid.UseAccessibleHeader = true;</p>
<p>&nbsp;&nbsp;  //This will add the &lt;thead&gt; and &lt;tbody&gt; elements<br />
&nbsp;&nbsp;  grid.HeaderRow.TableSection = TableRowSection.TableHeader; </p>
<p>&nbsp;&nbsp;  //This adds the &lt;tfoot&gt; element. Remove if you don't have a footer row<br />
&nbsp;&nbsp;  grid.FooterRow.TableSection = TableRowSection.TableFooter;<br />
&nbsp;&nbsp; }<br />
}</code></p>
<p>Then we just call the method from the Page_Load event like this:</p>
<p><code>protected void Page_Load(object sender, EventArgs e)<br />
{<br />
&nbsp; //Add data to the GridView<br />
 ...</p>
<p>&nbsp; MakeAccessible(gvFlowers);<br />
}</code></p>
<p>And this is the actual HTML that is generated:</p>
<p><code>&lt;table cellspacing="0" rules="all" border="1" id="gvFlowers" style="border-collapse:collapse;"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        &lt;thead&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                &lt;th scope="col"&gt;Name&lt;/th&gt;&lt;th scope="col"&gt;Height&lt;/th&gt;&lt;th scope="col"&gt;Width&lt;/th&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;/tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        &lt;/thead&gt;&lt;tbody&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                &lt;td&gt;tulip.jpg&lt;/td&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;420&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;/tr&gt;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                &lt;td&gt;daisy.jpg&lt;/td&gt;&lt;td&gt;32&lt;/td&gt;&lt;td&gt;481&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;/tr&gt;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                &lt;td&gt;rose.jpg&lt;/td&gt;&lt;td&gt;54&lt;/td&gt;&lt;td&gt;530&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            &lt;/tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        &lt;/tbody&gt;&lt;tfoot&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        &lt;/tfoot&gt;<br />
&lt;/table&gt;</code></p>
<p>It is not apparent that you have to dig into the header and footer rows and add a TableSection. This should be done automatically or at least be easy to set through a property at design time. I think it is an obvious mistake, but luckily for us, it is easy to fix if you know where to look.</p>
<p><a href="http://www.madskristensen.dk/blog/CommentView,guid,8263d3f1-a60e-456d-a8f0-c0ca2f8aba7c.aspx" class="bluelink">Comments</a></p>
<p>Tag:   </p>
<p> <a href="javascript:location.href='http://reddit.com/submit?url='+encodeURIComponent(location.href)+'&#038;title='+encodeURIComponent(document.title)"><img  src="http://images.ientrymail.com/webpronews/reddit.png" border=0>Reddit</a> | <a href="javascript:location.href='http://www.furl.net/storeIt.jsp?u='+encodeURIComponent(document.location.href)+'&#038;t='+encodeURIComponent(document.title)+ '   '"><img src="http://images.ientrymail.com/webpronews/furl-pic.png" border=0> Furl</a> </p>
<p> Bookmark WebProNews: <a href="http://www.webpronews.com"><img src="http://images.ientrymail.com/webpronews/wpn-readit.jpg" border=0></a></p>
<p>Mads Kristensen currently works as a Senior Developer at Traceworks located<br />
in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in<br />
2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and<br />
web services in his daily work as well. A true .NET developer with great passion for the simple solution.</p>
<p>http://www.madskristensen.dk/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webpronews.com/aspnet-make-gridview-control-accessible-2007-01/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
