Blog

Most Recent Blog Entries

Author: Brian Dukes Created: 2/5/2007 4:35 PM
I am a .NET Developer (MCPD) working mostly in web applications, specifically modules for DNN. I am passionate about writing secure code, and about code and database design. I am also becoming more and more interested in JavaScript, ASP.NET AJAX, and ALT.NET practices.

It's occasionally tricky/troublesome to pass the current Portald from your DotNetNuke control that inherits PortalModuleBase so that it can be used in your business object logic. A trick that I learned looking at another developer's code recently is to get the current PortalId from PortalController.GetCurrentPortalSettings().PortalId. CurrentPortalSettings is set for every request, so it is always the value that you are looking for.

Hope it helps,

I tend to run one of the latest versions of DotNetNuke for my development website, however I still want to compile against an older version so that my assemblies are compatible with the older versions.  So, I create a folder outside of my website (C:\Assemblies) with a directory for each version of DNN (and the Ajax Control Toolkit) that I might want to target.  I fill each directory with the contents of the bin folder from the DNN install (or Ajax Control Toolkit website), and then set a resource path in my project that points to that specific directory.  Voila, running 4.7.0, compiling against 4.5.1.

You'll need to make sure that your project doesn't set the Copy Local property on each reference, since that'll copy the old assembly over the new assembly and break your website.

Hope it helps,

Best practices for developing DotNetNuke modules dictates that we use the development.config as our web.config, which includes running our development sites under Medium Trust.  This is necessary so that we don't inadvertently introduce code that requires Full Trust into our module and thereby restrict it to customers running in Medium Trust.

However, while in Medium Trust, certain data visualizers in Visual Studio don't work (namely, the DataTable and DataSet visualizers).  You'll see a message like "The application you are debugging has insufficient privileges to allow the use of custom visualizers. Please see the documentation for the list of required privileges."  I've been occasionally frustrated for a number of months because I couldn't figure out why Visual Studio was barking at me when all I wanted to do was use their built-in visualizer.  Finally, I found this forum post and saw the root of the problem.  So, now I know, if I need to debug...

Read More »

We have just released a minor update to Engage: Rotator, our content rotating module for DotNetNuke.  This fixes issues some folks were seeing where content would "jump" a bit when it was rotating.  If you don't already have it, pick up a copy from our Buy Now page on Engage Modules.

Version 1.1.2 of Engage: Employment has been released to the web.  It is currently available from EngageModules.com, and will be available from SnowCovered before too long.  See the Downloads page of EngageModules.com for instructions on how to get access to the new version there if you have purchased from another website.

Verison 1.1.2 is a minor release which addresses an issue with email validation when applying for jobs.

Last weekend most of us from Engage went down to enjoy the Tulsa Tech Fest.  While the individual sessions were hit or miss, the keynotes were excellent and got us all excited to start using Silverlight, and we all definitely had fun together.

One of the topics in which I have been becoming more and more interested is the concept of Test Driven Development (TDD) and the Model View Controller\Presenter (MVC\MVP) frameworks that enable it.  I attended a few sessions on related topics, and was disappointed to learn that there seems to be little opportunity to use MVC (and, specifically, the new MVC Framework that Microsoft is developing) in DotNetNuke development.  But, I did take away some of the more general principles that make these patterns and practices useful, and hope to continue being able to integrate...

Read More »

On Wednesday of this week, we made our first public release of Engage: Rotator on Engage Modules.  If you've wondered about that snazzy looking rotating banner on the front page of Engage Software, this is it.  This is a product that has evolved over the last few months from the needs of various clients, and has now come to the point where we've invested a lot of time in making it user friendly and configurable.  Have a look on our demo site and see if this could help add a nice touch to your site.

Have you ever wanted to change what DotNetNuke says on it's controls? Change "Register" to "Join Us" or "Terms of Use" to "Member Agreement"? It's easier than you think.

Read More »

It often happens that I would like to know the size of an image so that I can smartly resize it in various situations. Until today, I had never been quite able to get everything that I needed to get it done.

Read More »

Using a DropDownList, RadioButtonList, CheckBoxList, or other similar control as a trigger of an Update Panel (rather than in the Update Panel itself) will cause the initial value not to fire a SelectedIndexChanged event.

Read More »

Purchase

Please click here to buy now.
Payment will be processed via credit card or PayPal.

Please click here to buy now.
Payment will be processed via credit card or PayPal.

Test Drive!

Want to find out how it works? Visit our demo site to see the modules in actions!

Want to find out how it works? Visit our demo site to see the modules in actions!

Subscribe

Sign up for our newsletter and get the latest product updates!

Sign up for our newsletter and get the latest product updates!

Online Support

Powered by DotNetNuke