BT

VB May Get a Big Push from ASP.NET MVC

by Jonathan Allen on Feb 19, 2009 |

ASP.NET MVC returns Microsoft developers back to the main steam world of website development. While the rest of the industry has embraced MVC-style frameworks, .NET developers customarily work with WebForms. For better or worse, WebForms isolate code from HTML and make mixing the too downright difficult. This has become especially problematic with the increased use of AJAX and CSS, both of which require more fine-grained control than what WebForms offers.

In ASP.NET MVC, views are still written in the pseudo-HTML language used by aspx files. These files are not compiled immediately, meaning even the simplest of syntax errors may not be caught until runtime. This also makes unit testing the views more difficult than necessary.

An alternative to using aspx is Visual Basic. With its support for inline XML fragments, VB is well suited for this role. This isn’t the first time Visual Basic was used as a templating language, VBScript was the default language for classic ASP. But unlike asp files, VB.NET offers a much cleaner separation between HTML and code.

In addition to the benefits you get from compiler validation, VB offers a much more powerful way to represent common site elements. With normal aspx files, common site elements are stored in Master Pages. A Master Page is essentially a wrapper around the HTML contained in the aspx file. With VB, you can use normal base classes. This allows for rich communication between the site template and the content generator, making it much easier to develop complex sites.

The major downside of using VB and XML Literals is that you lose IntelliSense support for HTML and JavaScript.

You can learn more about using VB in ASP.NET MVC on Channel 9.

Hello stranger!

You need to Register an InfoQ account or to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2013 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT