Generation IT The millennial ramblings of an IT professional

16Dec/090

Mini Post – DotNetNuke and web.config problems

I could have Twittered this but I wanted to put it here: Every now and again I find myself refreshing my developer's copy of my project on my local computer from source control.

The way I have source control is primitive and probably incorrect. I tend to save ALL of my project (DotNetNuke included) into source control, so when I get a clean setup, I can basically run it out of the box.

This particular time, I was working with a different database than I normally do. Because of this, my source control wrote over my web.config and copied the wrong database settings, which resulted in the web.config pointing to a no-longer existing database.

When I loaded up my website, I was greeted with the installation wizard from DotNetNuke. "Okay," I thought, "Perhaps I forgot to update this particular database with the new DNN version." I clicked on next a few times and realized it was just the wrong database being referenced. I changed the web.config to be the correct database and credentials and all was well...

Or was it?

I loaded up my project and I was getting rather unhelpful "I need to put a ScriptManager on the page in order to use AJAX.net" error. I just couldn't figure it out! It worked before! Long story short, the DNN install wizard messed around with the web.config and broke a few things configured specifically to my install. Once I pulled up an older web.config, everything worked perfectly.

This wasted about 2 hours of my time (which I don't really have) and was easily avoidable if I was paying attention.

Lesson learned: Always be methodical with processes which you perform regularly.  If something strange goes wrong within the process, it probably doesn't belong and should be approached very, VERY carefully.

9Oct/080

ModalPopupExtender .Show() Caveat

I'll admit it... I don't mind AJAX.NET.  In fact, I like a lot of the toolkit controls they provide.  Because I am "chained" to .NET and DotNetNuke, I don't much of a choice when it comes to bleeding-edge technology.

One thing I tend to use frequently is the ModalPopupExtender.  I had a requirement to show the modal popup when the page loads.  Easy enough, I just instansiate the code and in the onLoad code-behind do mpe.Show().

However, this didn't work It gave me an ugly error.  After sifting through a bunch of unhelpful forum posts online, I came across this issue in the AJAX Control Toolkit issue tracker.  Reading through the description, you notice that the problem has to do with the fact that there is a missing semi-colon if you try to invoke the modal through server-side on a page with validation.

Because the modal I was programming would not need the validation on the page, I simply turned off validation when the modal was invoked.  This worked like a charm.  If you require validation with the modal, I strongly suggest you check out the issue tracker page.