Skip to content

DotNetNuke in C#? What’s the difference?

March 2, 2011

So, the last major VB.NET open source project has passed away, to rise phoenix-like from the ashes as a major C# open source project. There has, of course, been some relatively heated debate in the past about whether or not this would be a good idea, particularly since Ben Zhong started maintaining a C# version of the codebase alongside the official VB.NET version. But the decision to change horses has been made now, for better or for worse, so the obvious question is "what difference will it make"?

Well, to be honest, plus ça change, plus c’est la même chose. Most people will notice precious little difference, but of course it depends on what angle you’re coming at it from:

  • End users should notice no difference at all. The C# code should be written to do exactly the same as the VB code, and so functionality should be unaffected. (Though there may be the odd cosmetic difference due to the fact that the C# release will be a new major version!)
  • Administrators should similarly notice no difference. However, there will be an onus on administrators to test the new version sooner rather than later. Any major version update is going to need more testing than DNN Corp can manage by themselves, but a major version accompanied by a language change is going to need an awful lot of tyre-kicking before you can be confident of it.
  • Developers won’t have to change anything. The API will remain the same, and modules can still be written in any .NET language, so you can continue to develop your modules as you always did. Where you will find a difference is when you’re looking through the DNN source code – if you’re a diehard VB.NET programmer then you’ll have to get used to the C# syntax if you want to follow what’s going on.
  • The DNN development team get to use a language which is better supported by Microsoft, have access to a wider array of tooling and can also choose from a larger pool of developers.
  • Non-DNN people quite simply get the chance to re-evaluate it without prejudice. Although there’s no technical reason for a language change to make any difference, there are a lot of potential reasons due to false perceptions. For example, some developers feel that VB.NET is a language for beginners and amateurs, and that any product written in VB.NET isn’t to be trusted. If these people can cross this mental boundary and actually give DNN a fair chance, the chances are they’ll be quite impressed by how much it’s evolved since they last looked at it in version 2. Also, some decision makers think that their C# developers can’t work as well with a CMS written in VB.NET. There’s still the WebForms bridge to be crossed, but that can wait a while longer!

So as long as we in the DNN community muck in and do our bit to make sure that v6.0 is tested as thoroughly as possible, it should in fact be a smooth transition and should also strengthen DNN’s long-term viability as explained so eloquently in Shaun Walker’s announcement. I know there are people out there who are quite sceptical about this, but I reckon it’ll work.

One Comment leave one →
  1. March 2, 2011 16:32

    like your blog desgin dude very minimal! I’ve never actually attempted to code anything for dnn, its been along time since i’ve coded anything but always put me off starting, dunno why… anyhow mabe you could put up some nice resources for beginners, albeit when you’ve finished off testing your ddr menu 😛

    Kind Regards
    Sam Lilleker

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: