Tagged Posts

Chris Hammond
If you’ve setup a new DNN site running on version 9.0 or 9.1, you’ll notice that you don’t have the ability to setup the Google Analytics module/code anymore. For some reason, DNN Corp in its infinite wisdom decided to remove the core, critical functionality from the Platform version of DNN and only leave it in the paid versions. Well fear not, you can easily add Google Analytics code to your pages, follow these steps.

Depending on what the "source" is, it appears that DNN 9.0.1 was released either 11 days ago, or 3 days ago.

So which is it, 11 or 3? Who cares, let's just go over some of the basics of what the release covers.

First off, there are a number of security updates in this release, primarily around API security.

Chris Hammond

DNN9 appears to be an evolutionary leap forward for the DotNetNuke CMS, but while there are many advances, there are some big misses of features that somehow got left behind, or at least hidden away so that finding them for someone who isn’t a DNN expert (such as myself, if I do say so) is impossible, unless of course you read this blog, then you’ll be on your way to utilizing DNN9 in ways that the average Joe could only hope to.

Chris Hammond

I woke up this snowy January morning with email from my most excellent web hosting company (www.appliedi.net) letting me know that my database server was almost out of hard drive space. Thanks for the heads up to the AppliedI team!

My first thought was “How is that possible?” I was just on the server in the past couple of days doing all my DNN9 upgrades, and there were 20 gigs of free space not 4 days ago. With a quick check I found that one of the databases was 9gb. 4 days ago that database was <250mb.

Chris Hammond
If you are having problems adding Pages in DNN 9, read this blog post. I recently upgraded all of my sites to DNN 9, the most recent one being upgraded last night. This morning I wake up to an email from a client of mine reporting a problem with adding pages in one of their sites that they also upgraded to DNN recently. I read through their email, and decide that I’ll look into their issue a bit later, have an itch to scratch on one of my own websites, so I’ll get to them later (sorry client).


I’ve been maintaining my DotNetNuke Visual Studio project templates for a number of years now, one of the things they have sorely been lacking is the ability to “customize” the templates without having to crack open the full source code of the VSIX project, making changes, and then recompiling everything. There are 5 specific strings/values that were ripe for customization, but simply were not easily accessible.

  • Root NameSpace – The Namespace for the project, all of the files were populated with this namespace.
  • Owner Name – A DNN Manifest property that is used to provide information on who either developed the module, or commissioned the module development. This also gets used in all of the Copyright statements built into the templates.
  • Owner Email – Another DNN Manifest property, used to provide an Email address for contacting the owner/developer of a module.
  • Owner Website – The URL of the package’s owner, for further contact and information.
  • Local DEV URL – The URL of your local development environment.

Of all of those items, the one that has likely caused the most headache over the years is the Local DEV URL property, that was set at DNNDEV.ME, which if you followed along with my various tutorials, was the URL I always use for local development, that domain name points to This actually works out great, but some people choose not to follow my tutorials or already have existing development environments configured, yet still want to use my templates. You could still use them, but you had to make some modifications to the PROJ files after creation in order to get things working.

With the latest release of the templates, when you create a project using one of the 6 included templates, you will then be prompted with a Wizard interface (single step) that will allow you to customize these fields.


As always, you can download the latest “release” of the templates from the DNN Store, or from the Visual Studio Online Gallery if you want to get creative, you can check out the Repo on GitHub

Chris Hammond
With the release of DNN Platform 8 last week it is now possible to develop modules using SPA and MVC patterns within the DNN platform. As Part of the buildup of the DNN 8 release, Will Strohl provided a Pull request to my DNN Extension Project Templates project to help clean up some of the basic module templates to work better on Windows Azure environments, and to prep them for inclusion of new DNN 8 specific templates for SPA and MVC modules. Early in the fall Joe Brinkman provided a partial SPA project, with the intention of it becoming a project template. I had a little time when it was initially submitted to work on it, but wasn’t able to get everything squared away on the template until early December. It wasn’t until last week that I got additional time to do further testing on the template and fix a few issues that occurred during the conversion to a project template.
Chris Hammond
A few months ago I released V4 of my DNN Development templates, which included a new project template for Themes (skins). This weekend I was working on a new theme (skin) for a customer project and came across a few changes I needed/wanted to make to the Theme project template, so you get to benefit from those changes as I have put a new release out of the project templates.
Chris Hammond

For years I have maintained a set of Visual Studio project templates that are used by thousands of people to quickly and easily create Modules for the DotNetNuke Content Management System, and for years, I have had people request that I create a project template for creating a DNN Skin (now known as Themes).

This weekend I finally took the time to do just that. With the latest release of my Visual Studio project templates, you can now create a Theme for DNN. When doing so, you will be presented with a basic skin, using Bootstrap v3.1.1, based on my HammerFlex theme for DotNetNuke.

Chris Hammond
If you’ve recently upgraded to DotNetNuke 7.3, you might not have noticed that your scheduled tasks aren’t running. How do you know if your tasks are running or not? Follow these steps
Chris Hammond

With the release of DNN 7.3.0 this week, it was time for me to get my sites upgraded. I upgraded most of the sites without any issues, but wanted to point out a few errors that I received on sites, and how I resolved them.

The very first upgrade I did started out bad, it was for this site, and while the upgrade was 100% successful, as soon as I tried to load the site I got a generic 500 error. Accessing the site from the webserver gave me a little more information, seen below, but not much.

Chris Hammond
One of the things I’ve failed to do with my latest free open source skin, HammerFlex, for DNN is provide a good overview of how to utilize the skin. To really understand a skin, one must know the layout, and the thought process behind the layout (panes).
Chris Hammond
A month or so ago I released a new open source skin for DotNetNuke (DNN), called HammerFlex. One of the cool things about the HammerFlex skin is the implementation of Bootstrap, and specifically the Carousel feature that allows you to add a carousel/slider to your site. The skin is designed to use the carousel at the top of a page, I haven’t tried it elsewhere, though it might be possible to use in other Panes in the DNN Skin.
Chris Hammond
I decided recently it was time to upgrade the look of my various websites, and while I originally considered modifying my MultiFunction skin for DNN, ultimately I decided to start from the ground up and create a new Skin for DNN using Bootstrap (http://getbootstrap.com), I’ve decided to call it HammerFlex.
Chris Hammond

My website was due for an overhauled design, somehow a full year came and went and I hadn't done any major updates to the website. I guess that is what happens when you, move, change jobs, and have a second child in on year, time sort of magically goes away.

A couple of weeks ago I started working on a new DNN skin, to replace my MultiFunction skin that I've had in use here on ChrisHammond.com for a number of years now. Initially I was going to work on upgrading MF, but after giving it some thought, I felt like I wanted to start over, and this time around I wasn't sure that I was going to create an open source skin, most likely just something that I would use for my own websites, of which I have plenty to spread the skin around on.

Chris Hammond

Earlier in 2013 I started working on a new round of DNN Module Development tutorials. For a few months now I've been promising that I would finish up that series, but at this point I am going to announce that the series is on hiatus. 

There are a number of reasons for this, the primary of which is that I am simply too busy. My work role at ClubReady, Inc. has changed over the past month, was promoted to the Director of Customer Experience leading a team of 14 other folks, including developers and customer service staff.

Chris Hammond

In October, the SignalR project had their first official 2.0.0 release, and with that comes a number of changes to make your modules work with SignalR. You can upgrade your SignalR package via Nuget.

You can find a guide to upgrading your projects at http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/upgrading-signalr-1x-projects-to-20

Chris Hammond

In a previous blog post I talked about what you can do to get DNN 7.1 working if you previously had Xepient's Open Search installed. One thing I failed to cover though, was what happens after you disable open search? You likely no longer have the DNN Search Results module on a page, and after upgrading to DNN 7.1.2 (I didn't notice this in 7.1.0) you may find that the "Preview" search results in the Search SkinObject no longer work.

You may not actually notice, but if you try to "search" and you just get redirected back to the page you were on when you searched, you likely are running into the problem I have a fix for below.

Chris Hammond Google+

I upgraded a number of websites to DNN 7.1.2 tonight, and I ran into two different problems, this blog post will hopefully help you address the issues that I ran into, if you happen to run into them as well.

Disclaimer: Always backup your website/database before making any changes or running any SQL scripts you got off the web. I don't take any responsibility for damage you cause to your own website, but if you need consulting help with your DNN site, I am available.

Chris Hammond Google+

In a previous blog post I talked about how to use SignalR with your DotNetNuke modules, well, if you are using DNN 7.1 and the "Advanced" URLFormat option (upgrades won't use this by default, new installs will) then the SignalR/Hubs route will no longer work, DNN will return a 404 for that path.

What you need to do is "override" the URL settings in DNN. In the DNN Platform, you have to do this manually, via the database, I believe the EVOQ ($paid$) versions have a UI for this, but for those of us who focus specifically on the open source platform, you need to make manually update database entries to customize the URL handling in 7.1+.

Chris Hammond Google+

I was upgrading a customer's website this evening, in a test environment thankfully, and ran into a problem. The upgrade appeared to run successfully, minus one little issue with a primary key (in the 6.0.0 script).

But after running the upgrade, the website wouldn't load. I kept getting an error in Chrome, and then finally started getting 503 errors as the server shut down the application pool completely.

Chris Hammond
I started this list a while back, and decided I would go ahead and finish it, and post it online. Thanks to Oliver Hine for #9 As someone who runs, edits or develops for a DotNetNuke website, these are 10 things you should always stick to.
Chris Hammond
I have released version 2.2 of my open source DotNetNuke Module Development Templates. Version 2.2 is really just a minor update for the release, with a couple of fixes, one big, and the rest fairly small.
Chris Hammond

I’ll start this post off by stating a few things. One, I don’t work for DotNetNuke Corporation anymore, but I still love this project and will continue to work with it for the foreseeable future. That being said, expect tough love from me going forward.

The messaging feature was added in DotNetNuke 6.2, and since then it might have seen a bug fix or two, but it like most other features added to DotNetNuke over the past 4 years, has remained stagnant and seen no additional enhancements.

Now, how can you go about trying to improve the Messaging in DotNetNuke right now?

One of the biggest problems with the messaging module is the message that actually gets sent to the email address of the person receiving the message. It contains absolutely NO information on WHERE the message came from, other than the username of the person who sent it, in the SUBJECT of the email.

Chris Hammond

This post will provide you with a basic tutorial for utilizing SignalR with custom DotNetNuke Modules. If you want to bypass the blog post go check out the source on GitHub, you can Fork my Repository. The module created here will be very simple, if you want a full blown module with more features be sure to check out the open source DotNetNuke Module SignalRChat, and see it in action at http://dnnCHAT.com/

SignalR is an ASP.NET library for using websockets and long polling in your applications. Basically what this means, is that you can have your web pages (or apps) maintain an open connection with a webserver, passing data back and forth, without having to do standard posts and gets for the content and functions. SignalR is a free library that you can get from www.signalr.net and you can DL from nuget.org right into your Visual Studio projects.


Chris Hammond is

Chris Hammond is a father, husband, leader, developer and car guy. Chris has long specialized in ASP.NET and DotNetNuke development, so you will find a variety of topics here on the website. For more information check out the about me page.

If you are looking for DotNetNuke consulting please visit my business website at http://www.christoc.com/

Filter By Tag

  1. .net
  2. 2008
  3. 240Z
  4. 350Z
  5. A6
  6. About Me
  7. Ads
  8. AJAX
  9. asp.net
  10. ASP.Net AJAX
  11. Audi
  12. Audi A6
  13. Barnsoft
  14. Baseball
  15. Beetle
  16. Best Practices
  17. Blogs
  18. Book
  19. Bootstrap
  20. Borders
  21. Bugs
  22. Build
  23. C#
  24. Car
  25. Cardinals
  26. Carousel
  27. Cars
  28. Chat
  29. ChristocTemplate
  30. CMS
  31. CodePlex
  32. Colorado
  33. Commandments
  34. Community News
  35. Community Server
  36. communityserver
  37. Consulting
  38. Content Management
  39. Content Management System
  40. Corvette
  41. Corvette Z06
  42. Corvettez06
  43. CorvetteZ06.org
  44. CSS
  45. daily tips
  46. DAL
  47. DAL2
  48. Data Access Layer
  49. Database
  50. Datsun
  51. Design
  52. Designs
  53. Developer
  54. Development
  55. DLL
  56. DNN
  57. DNN9
  58. DnnCart
  59. dnnCHAT
  60. DNNCMS
  61. DNNCorp
  62. DNNUG
  63. DNNWorld
  64. domain
  65. Domains
  66. Domotics
  67. DotNetnuke Conference
  68. DotNetNuke Corporation
  69. DotNetNuke Development
  70. DotNetNuke Modules
  71. DotNetNuke Support
  72. DotNetNuke Tips
  73. DotNetNuke Training
  74. Dressage
  75. Education
  76. Electric
  77. Electric Car
  78. Electric Vehicle
  79. Engage
  80. Engage Software
  81. Error
  82. Errors
  83. EV
  84. EventLog
  85. Exceptions
  86. F&L
  87. Facebook
  88. Family
  89. Feedback
  90. Fitness
  91. Fix
  92. Fixes
  93. Forge
  94. form and list
  95. Free
  96. Friends
  97. general Software Development
  98. Germany
  99. Gmail
  100. Google
  101. Google Analytics
  102. Google Apps
  103. Growth
  104. HammerFlex
  105. Hammond
  106. Health
  107. Healthcare
  108. Home Automation
  109. HTML
  110. IIS
  111. ITM
  112. ITM America
  113. ITM-America
  114. javascript
  115. Job
  116. jQuery
  117. JSON
  118. Kentucky
  119. Languages
  120. Las Vegas
  121. Layout
  122. Leaf
  123. Learn
  124. Life
  125. Life News
  127. Marketplace
  128. Messaging
  129. Microsoft
  130. MIT
  131. Module
  132. Module Development
  133. Modules
  134. Moving
  135. MSBuild
  136. NANT
  137. Natalie
  138. Nissan
  139. Nissan Leaf
  140. October 14th
  141. Open Source
  142. OpenForce
  143. OpenForce 07
  144. OpenForce07
  145. OpenSearch
  146. Panes
  147. Personal
  148. Philanthropy
  149. Photography
  150. Photos
  151. Pictures
  152. Places to See
  153. Project
  154. Project 240Z
  155. Project 350Z
  156. Project Templates
  157. Project240z
  158. Project240Z.com
  159. Project350z
  160. Project350z.com
  161. Projects
  162. Publish
  163. Quattro
  164. Rating
  165. Release
  166. Review
  167. Saint Louis
  168. Saint Louis Equestrian
  169. SCCAForums
  170. Schedule
  171. School
  172. Search
  173. Search Results
  174. SEO
  175. Sharepoint
  176. Shift8Read
  177. SignalR
  178. SignalR:
  179. Site News
  180. SiteLog
  181. Sitemap
  182. Skin
  183. Skinning
  184. Skins
  185. Slider
  186. Slideshow
  187. Software
  188. Solo2.org
  189. Sports
  190. SQL
  191. St. Louis
  192. Statistics
  193. Super Beetle
  194. SuperBeetle
  195. table
  196. Task
  197. Technology
  198. Template
  199. Templates
  200. Testing
  201. Theme
  202. Themes
  203. Tips
  204. Training
  205. Travel
  206. Tricks
  207. Trips
  208. Trouble Shooting
  209. TulsaTechFest.com
  210. Tutorials
  211. Upgrade
  212. Upgrades
  213. User Groups
  214. Users Group
  215. User's Guide
  216. VB.Net
  217. Vista
  218. Visual Studio
  219. Visual Studio 2005
  220. Visual Studio 2012
  221. Visual Studio 2015
  222. VS2005
  223. VS2012
  224. VW
  225. Washington DC
  226. Web Services
  227. weblogs.asp.net
  228. Wiki
  229. Windows
  230. Windows 8
  231. Windows Home Server
  232. Work


Any blog posts here are solely the opinion and views of Chris Hammond only. Comments on blog posts are the opinion of the commenter, and not Chris Hammond.

Powered By

This website is managed by Christoc.com Software Solutions

Find Me