Sunday, November 28, 2010

ASP .NET MVC workshop



In our firm, we conducted a hands-on workshop in ASP .NET MVC technology. It went well with few enthusiastic participants. Common questions are around whatz major diff between ASP .NET and ASP .NET MVC, how MVC engine works, technical directions of Microsoft in web based ASP .NET space.

MVC is an architectural pattern introdced in Smalltalk (1979), which maintains multiple views of the same data. Key concept is Models for maintaining data, Views for displaying and Controllers for handling events.

In terms of pattern, ASP .NET is page controller and ASP .NET MVC is front controller as indicated in associated image on left hand side.

As Points of Interest, ASP .NET MVC is
  • Not the new Web Forms 4.0
  • Not replacing Web Forms, but Adds to it
  • It can not use Web Controls
  • Not a whole new engine but sits on ASP.NET engine
  • Not the best solution for REST

In terms of technical directions in web based ASP .NET space, Microsoft runs with ASP .NET MVC, ASP .NET AJAX and ASP .NET DynamicData.

Hope, ASP .NET MVC workshop reaches these core concepts to the participants. Happy Coding!

Monday, November 15, 2010

Cloud Computing Summit


Cloud computing comes into focus only when you think about what IT always needs: a way to increase capacity or add capabilities on the fly without investing in new infrastructure, training new personnel, or licensing new software. Cloud computing encompasses any subscription-based or pay-per-use service that, in real time over the Internet, extends IT's existing capabilities.

Four fundamental requirements for Cloud are: (1) Scale out (2) Automated service (3) High availability and (4) Multi tenancy.

Recent days, Industry started contributing towards cloud application. If you go thro netflix site (http://netflixpivot.cloudapp.net/), you can feel the performance of Cloud. Last week, had a chance to attend the summit on Cloud & SOA at Bangalore. Event linked is posted at http://events.linkedin.com/ABOUT-BT-SUMMIT-2010-Bangalore/pub/371837

Vendors are providing the services in 3 categories, (1) Infrastructure (2) Platform (3) Application. In case of Microsoft, they are named as (1) IAAS(Infrastructure As A Service) like ForeFront, SystemCentre (2) PAAS(Platform As A Service) like SQL Azure, App Fabric, Azure OS (3) SAAS(Software As A Service) Office Live, Exchange Live, SharePoint Live, CRM Live. Microsoft is doing further R&D on DataSync, Azure reporting (similar to SSRS), Project Houston-DB Manager, etc

Microsoft Azure and Amazon EZ2 are the top competitors in the market. Itz interesting to observe CIO.com analysis about their top 5 differences. http://www.cio.com/article/632213/Microsoft_vs._Amazon_Clouds_5_Key_Differences

Saturday, November 6, 2010

Resource Files in .NET Assembly


In general, manifest is another set of metadata tables that basically contain the names of the files that are part of the assembly. It contains 4 metadata tables namely AssemblyDef, ManifestResourceDef, FileDef and ExportedTypesDef.

You can add a file as a resource to the assembly by using the /embed[resource] switch. This switch takes a file (any file) and embeds the file’s contents into the resulting PE file. The manifest’s ManifestResourceDef table is updated to reflect the existence of the resources.

/link[resource] switch updates the manifest’s ManifestResourceDef and FileDef tables, indicating that the resource exists and identifying which of the assembly’s files contains it. The resource file is not embedded into the assembly PE file; it remains separate and must be packaged and deployed with the other assembly files.

On adding resource files in any .NET assembly, C# compiler’s /resource switch embeds the specified resource file into the resulting assembly PE file, updating the ManifestResourceDef table. The compiler’s /linkresource switch adds an entry to the ManifestResourceDef and the FileDef manifest tables to refer to a stand-alone resource file.