DotNetNuke Hosting with ASPHostPortal.com

BLOG about DotNetNuke CMS, latest technology and Special DotNetNuke Hosting Package with ASPHostPortal.com

DotNetNuke Hosting - ASPHostPortal.com :: How to Fix DotNetNuke "Value Cannot Be Null" Error

clock Junie 4, 2015 06:20 by author Dan

If you have performed an upgrade to your DNN installation and received the following error after the upgrade had completed with a successful report then this article may help you in correcting this error.

Value cannot be null.
Parameter name: type
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentNullException: Value cannot be null.
Parameter name: type

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

You maybe able to correct this error by following these steps.

1) Log into your control panel.

2) Select the option "Domains" from the Main Menu. Select your domain from the list of Hosted Domains on your account.

3) You should now be at the Domain Menu for the selected Hosted Domain. Locate the option for "File Manager" and click on it. This will show you a Browser window with all of your domain's folders. Click on the "wwwroot" folder to view it's contents and then click on the "Bin" folder to view inside of it.

4) Locate the file named "DotNetNuke.Provider.Membership.SqlDataProvider.dll" within the Bin folder and delete it.

5) Try launching your site again at this time and see if this has corrected the issue. If it did not correct the issue, you must call technical support staff from your hosting provider.

Best DotNetNuke Hosting Recommendation

ASPHostPortal.com provides its customers with Plesk Panel, one of the most popular and stable control panels for Windows hosting, as free. You could also see the latest .NET framework, a crazy amount of functionality as well as Large disk space, bandwidth, MSSQL databases and more. All those give people the convenience to build up a powerful site in Windows server. ASPHostPortal.com offers DotNetNuke hosting starts from $0. We also guarantees 30 days money back and guarantee 99.9% uptime. If you need a reliable affordable DotNetNuke Hosting, we should be your best choice.



DotNetNuke Hosting - ASPHostPortal.com :: How to Fix DotNetNuke Can't log in After Upgrade

clock Mei 21, 2015 06:03 by author Dan

You recently upgrade your DNN version, after upgrade you cannot login to your website and get "A critical error has occurred. An unexpected error has occurred".

The database upgraded successfully and you don't see any errors in the server logs.

Step by Step to Fix it :

In your web.config try changing

<members defaultProvider="AspNetMembershipProvider">
<providers>
 <clear />

    <add name="AspNetMembershipProvider" type="DotNetNuke.Security.Membership.AspNetMembershipProvider, DotNetNuke.Provider.AspNetProvider" providerPath="~\Providers\MembershipProviders\AspNetMembershipProvider\" />
      </providers>
    </members>


to

<members defaultProvider="AspNetMembershipProvider">
      <providers>
        <clear />
        <add name="AspNetMembershipProvider" type="DotNetNuke.Security.Membership.AspNetMembershipProvider, DotNetNuke" providerPath="~\Providers\MembershipProviders\AspNetMembershipProvider\" />
      </providers>
    </members>

Best DotNetNuke Hosting Recommendation

ASPHostPortal.com provides its customers with Plesk Panel, one of the most popular and stable control panels for Windows hosting, as free. You could also see the latest .NET framework, a crazy amount of functionality as well as Large disk space, bandwidth, MSSQL databases and more. All those give people the convenience to build up a powerful site in Windows server. ASPHostPortal.com offers DotNetNuke hosting starts from $0. We also guarantees 30 days money back and guarantee 99.9% uptime. If you need a reliable affordable DotNetNuke Hosting, we should be your best choice.



FREE ASP.NET Hosting for DotNetNuke :: How to Solve DNN 7 Login Issue

clock Mei 7, 2015 06:51 by author Dan

When upgrading from DNN 6.x to DNN 7.x, the installation wizard seems to miss an important setting in the web.config.  It also does not delete old DLLs from the /bin/ folder.  Because you are performing an upgrade rather than a clean installation, there are two versions of the AspNetMembershipProvider available, and the web.config may point to the wrong one.

Here is the fix.  Update your web.config to change the AspNetMembershipProvider section so that it uses the DotNetNuke.dll assembly instead of the DotNetNuke.Provider.AspNetProvider.dll assembly.

    <members defaultProvider="AspNetMembershipProvider">
      <providers>
        <clear />
        <add name="AspNetMembershipProvider"
          type="DotNetNuke.Security.Membership.AspNetMembershipProvider,
          DotNetNuke.Provider.AspNetProvider"
          providerPath="~\Providers\MembershipProviders\AspNetMembershipProvider\" />
      </providers>
    </members>


After removing “.Provider.AspNetProvider” from the configuration, everything should work fine.

FREE ASP.NET Hosting for DotNetNuke Recommendation

ASPHostPortal.com provides its customers with Plesk Panel, one of the most popular and stable control panels for Windows hosting, as free. You could also see the latest .NET framework, a crazy amount of functionality as well as Large disk space, bandwidth, MSSQL databases and more. All those give people the convenience to build up a powerful site in Windows server. ASPHostPortal.com offers DotNetNuke hosting starts from $0. We also guarantees 30 days money back and guarantee 99.9% uptime. If you need a reliable affordable DotNetNuke Hosting, we should be your best choice.



DotNetNuke Hosting With ASPHostPortal.com :: How to Integrating the Google Tag Manager (GTM) into DNN

clock Maart 27, 2015 05:40 by author Mark

Today I will explains about Integrating the google tag manager (GTM) into DNN. Google has an awesome scripts-management engine called GTM (Google Tag Manager). Though it talks about managing tags, in reality it actually manages script-integration. Particularly Google-scripts (like Adwords and tracking stuff), but also jQuery and similar.

How does it work? In general you create a “set” of “tags” (read: scripts w/parameters) in a web-interface provided by google. Then you integrate that set with some iFrame/Script-HTML-snippet in your layout. If one day you would like to add another tag or change the tag-integration-rules, you do this on the GTM-System, without having to modify your page. Note that the GTM-System also allows various rules, like automatically integrating different scripts depending on the page that is being viewed; adding custom parameters etc. – very powerfull.

The integration is a bit tricky with DNN, because it uses an iFrame which must be added right after the tag and before the default tag.
To learn more about GTM, visit the Google Tag Manager website.
To integrate your tag, use this snippet in your default.ascx (remember to replace the xxxx with your code). Note: this works with DNN 6+ and 7+.

<script runat="server">
     protected override void OnInit(EventArgs e)
     {
         base.OnInit(e);
         var tp = (CDefault)Page;
         tp.FindControl("Body").Controls.AddAt(0, new Literal() { Text = "<!-- Google Tag Manager --><noscript><iframe      src='//www.googletagmanager.com/ns.html?id=GTM-XXXX'height='0'width='0'style='display:none;visibility:hidden'></iframe></noscript><script>function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':newDate().getTime(),event:'gtm.js'});varf=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'scr" + "ipt','dataLayer','GTM-XXXX');</scr" + "ipt><!-- End Google Tag Manager -->" });      
     }
 </script>

By the way – the easiest way to test and use this is by trying the DNN App for GTM I created.

Best DotNetNuke Hosting Recommendation

ASPHostPortal.com

ASPHostPortal.com provides its customers with Plesk Panel, one of the most popular and stable control panels for Windows hosting, as free. You could also see the latest .NET framework, a crazy amount of functionality as well as Large disk space, bandwidth, MSSQL databases and more. All those give people the convenience to build up a powerful site in Windows server. ASPHostPortal.com offers DotNetNuke hosting starts from $5/month only. We also guarantees 30 days money back and guarantee 99.9% uptime. If you need a reliable affordable DotNetNuke Hosting, we should be your best choice.



DotNetNuke Hosting With ASPHostPortal :: How I Get My DotNetNuke To Run So Fast

clock Maart 2, 2015 06:56 by author Mark

One of the most common questions that I get via the forums on this site, or via e-mail is "How do you get your sites to run so fast".  Although not perfect, my sites typically run a bit faster than your average DotNetNuke sites.  Previously I have kept the exact specifics of my changes to myself, however, with a litle encouragement from the community I have decided to share the full context of the changes that I make to a default DotNetNuke installation to get better baseline performance, as well as extra items that I do to help when I really need that "boost".

Overview

First of all I want to start out by saying that a lot of the information that is displayed here can be found in previous blog postings.  Posts such as DotNetNuke Host Settings Explained, DotNetNuke Scheduler Explained, DotNetNuke Performance Settings Explained, and Simple DotNetNuke Performance Enhancements.  Are good starting points for some of the detail behind my recommended changes.
The following changes are simply the configurations that I have found to be the best "baseline" configurations.  Consideration is needed in regards to the site setup, update frequency, traffic, hosting environment and users to ensure that you have the proper setup for your specific environment.  I will discuss the settings section by section, simply noting the changes that are made.  Please reference the specific "Detail" document for more information.
DISCLAIMER: Follow these recommendations as a guide only, I am not responsible for any effects of implementing these changes.

Host -> Host Settings Changes

The first place I visit is the Host Settings page.  There are a number of key updates and changes needed in this section.  Again, only changes are noted here.

Appearance

In this section I uncheck the "Show Copyright Credits" box

Advanced -> Authentication Settings

In this section I uncheck "Enabled" for any provider that will not be used in the portal, typically the LiveId and OpenId providers

Advanced -> Performance Settings

In this section I change the "Module Caching Method" to Memory.  the "Performance Setting" to HeavyCaching.  And the "Compression Setting" to GZip Compression.

Advanced -> Other Settings

In this section I change the "Scheduler Mode" to Timer.  I enable the "Event Log Buffer" and I disable the "Auto-Sync File System" option
These are the most common Host Settings changes that I complete.  Depending on the site I'll make a few other small edits.

Host -> Scheduler Changes

The biggest change that I make here is to change the "SearchEngineScheduler" task to run typically once every 12/24 hours.  This reduces a big load on the server.

Other Changes

From a DotNetNuke configuration change that is all that I modify.  Overall those changes typically result in very noticable performance improvements, but many times it just isn't enough to keep the sites running as smooth as possible.  So depending on the situation I have a number of other items that I work with.

Regular Purging of Event Log

As most people that have used DotNetNuke have discovered the EventLog table can become a very troublesome hinderance on the performance side of a site.  Enabling the Event Log Buffer helps reduce the effects of a large EventLog, however, the best policy is to clean the EventLog on a regular basis.
I do this one of two ways.  On my own sites I have an SSIS package within SQL Server that truncates the table every 24 hours.  On client sites I utilize my Scheduled SQL Jobs module to keep a 7 day rolling history of the EventLog data.  The key here is that we MUST keep the event log small.

Skin Selection and Menu Provider

The next item of consideration is a multi-part consideration.  I focus on finding CSS based skin layouts that utilize third party menu components such as Telerik and Css NavMenu.  With a simple skin change to sites I have noticed page load times that have reduced by over 50%.
Finding a good designer that creates well laid-out skins with third party menu providers has been a key performance enhancement, at least in the page.  I have NOT benchmarked these numbers though since DNN , so the core menu provider might have better performance.

Compression/Caching Modules

As a last step, if I really need to get the most performance out of a site I will tend to lean towards Snapsis PageBlaster as a good option.  I currently use PageBlaster on this site only and have had very good luck with it, although when configuring the module you must be careful to test all functionality first.  This was another change that once implemented I noticed very visible performance improvements.

Summary

There you have it, that is my secret trick to improving DotNetNuke site performance!  Many people charge a lot of money to make these simple performance tweaks and I just laid them all out on the table for you free of charge.

Best DotNetNuke 7.4 Hosting Recommendation

ASPHostPortal.com

ASPHostPortal.com is the leading provider of Windows hosting and affordable DotNetNuke Hosting. DotNetNuke Hosting from ASPHostPortal.com provides a safe, reliable and performance-driven foundation for your DotNetNuke website. DotNetNuke is the perfect Content Management System for managing and developing your website with one of ASPHostPortal’s Hosting plans. ASPHostPortal has ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.5.2, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch, ASPHostPortal guarantees the highest quality product, top security, and unshakeable reliability, carefully chose high-quality servers, networking, and infrastructure equipment to ensure the utmost reliability



DotNetNuke Hosting with ASPHostPortal :: How To Uninstall DNN Module Programmatically

clock Februarie 11, 2015 17:38 by author Mark

Uninstall DNN Module programmatically

To uninstall the DNN module is actually quite complex via code. There are couple of table modules related and depends on each other. Fortunately, the DNN framework has a built in delete method for these modules. There are 3 tables in the database that are related to the module definitions. They are: DesktopModules, ModuleDefinitions and PortalDesktopModules. The DesktopModules and ModuleDefinitions tables are global tables that are linked to all portals. While PortalDesktopModules table contains a relationship between each portals and what modules can be used by each individual portal.
Lets say you want to remove a list of modules containing a name started with MyModule_.

/* Firstly, you need to include these namespaces on the top of the code */
/* This namespace for Dictionary collection */
using System.Collections;
/* These namespaces for module collection */
using DotNetNuke.Entities.Modules;
using DotNetNuke.Entities.Modules.Definitions;

The next part is to grab a list of module definitions collection and compare if the name contains MyModule_

/* Declare ModuleDefinitionController object */
ModuleDefinitionController objModuleDefinitionController = new ModuleDefinitionController();
/* Declare DesktopModuleController object */
DesktopModuleController objDesktopModuleController = new DesktopModuleController();
/* Get dictionary module collection */
Dictionary<int, ModuleDefinitionInfo>  moduleList = ModuleDefinitionController.GetModuleDefinitions();
/* Perform a looping in the module list */
foreach (int i in moduleList.Keys) {
    /* We only delete the module friendly name contains MyModule_ */
    if (moduleList[i].FriendlyName.IndexOf("MyModule_") >= 0) {
        /* Delete the module from table module definitions */
        objModuleDefinitionController.DeleteModuleDefinition(moduleList[i].ModuleDefID);
        /* Delete the module from table desktop modules */
        objDesktopModuleController.DeleteDesktopModule(moduleList[i].DesktopModuleID);
        /* Delete the module from portal desktop modules */
        DesktopModuleController.RemoveDesktopModuleFromPortal(PortalId, moduleList[i].DesktopModuleID, true);
    }
}

Best Recommended DotNetNuke Hosting

ASPHostPortal.com

ASPHostPortal.com is the leading provider of Windows hosting and affordable DotNetNuke Hosting. DotNetNuke Hosting from ASPHostPortal.com provides a safe, reliable and performance-driven foundation for your DotNetNuke website. DotNetNuke is the perfect Content Management System for managing and developing your website with one of ASPHostPortal’s Hosting plans. ASPHostPortal has ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.5.2, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch, ASPHostPortal guarantees the highest quality product, top security, and unshakeable reliability, carefully chose high-quality servers, networking, and infrastructure equipment to ensure the utmost reliability.



DotNetNuke Hosting With ASPHostPortal :: How to Automate the Packaging of your DNN Module

clock Februarie 9, 2015 15:53 by author Mark

Today we will learn How to Automate the Packaging of your DNN Module, let me to show you step by step :

 

  • Delete all source code and start over from scratch with my templates installed.
  • Open your project in Visual Studio
  • Install the MSBuildTasks project from Nuget:

   PM> Install-Package MSBuildTasks

  • Create a BuildScripts folder in your project
  • Add two files (source for each here)
  • ModulePackage.targets
  • MSBuild.Community.Tasks.Targets
  • Right click on the project in Visual Studio Solution Explorer and choose “Unload Project”
  • Save changes if prompted
  • Right click on the unloaded project and choose the Edit option
  • At the bottom of the file, before the </Project> section add

        <PropertyGroup>
          <Extension>zip</Extension>
          <DNNFileName>CHANGEME.dnn</DNNFileName>
          <PackageName>CHANGEME</PackageName>
          <MSBuildCommunityTasksPath>$(SolutionDir)\Build</MSBuildCommunityTasksPath>
        </PropertyGroup>
        <Import Project="BuildScripts\ModulePackage.Targets" />
        <Target Name="AfterBuild" DependsOnTargets="PackageModule">
        </Target>
        <Import Project="$(SolutionDir)\.nuget\nuget.targets" />

  • Change the “CHANGEME” text to match the name of your .DNN file and the name of the ZIP file that you want the package created as.
  • Save the Project changes.
  • Right click on the project in Solution Explorer and choose Reload Project.
  • Switch into Release mode in Visual Studio and do a Build of your project.

This should create two files, ModuleName_Version#_Install.zip and ModuleName_Version#_Source.zip.
What I typically do then is install the module to a test DNN install to make sure that everything is working correctly. You’ll want to make sure that the ZIP files created contain all the right files, and they get installed correctly, so a test installation is the best way to go through that process.
If something fails, try to track it down, then do another Build in Release mode, rinse and repeat the installation process in your test install until you get everything working properly.

Now going forward, after you do a release, you go into your AssemblyInfo file, change your version number there, and into your .DNN File and change your Version number there. Next time you build in Release mode the module will create a new VERSION number ZIP file, leaving your last version builds there as well.

Best Recommended DotNetNuke Hosting

ASPHostPortal.com

ASPHostPortal.com is the leading provider of Windows hosting and affordable DotNetNuke Hosting. DotNetNuke Hosting from ASPHostPortal.com provides a safe, reliable and performance-driven foundation for your DotNetNuke website. DotNetNuke is the perfect Content Management System for managing and developing your website with one of ASPHostPortal’s Hosting plans. ASPHostPortal has ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.5.2, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch, ASPHostPortal guarantees the highest quality product, top security, and unshakeable reliability, carefully chose high-quality servers, networking, and infrastructure equipment to ensure the utmost reliability.



DotNetNuke Hosting With ASPHostPortal.com :: How to Fix DotNetNuke 7 DNN Edit Button Not Work

clock Februarie 4, 2015 05:35 by author Mark

After a clean install of DotNetNuke version 7.00.05, the Edit buttons would not work, and the page would repeatedly redirect to the homepage when clicking Edit. I did not experience this issue on installations which I upgraded.  I have uncovered three solutions which work, or at least work around, to solve the problem.

Method 1

One way to get around this problem is to use the Ribbon Bar instead of the Control Bar as the Control Panel setting. To make this change, navigate to the “Host” panel, click “Host Settings”, click the “Other Settings” tab. Set the “Control Panel” setting to “RibbonBar”.

Method 2

The second method, and one of the methods which actually solves the “ControlBar” issue, is to edit the web.config file. I found this solution at chaydigital. This method does work to solve the problem, but I have concerns about the waste of system resources it could cause as well as possibly creating other errors.
Open the web.config file in Notepad.exe or another editor. Find the system.webServer section, and change this section:

<system.webServer>
   <modules>

To this:

<system.webServer>
   <modules runAllManagedModulesForAllRequests="true" >

Method 3

Due to my concerns with placing a global fix in my web.config which might cause other errors to crop up, I decided to create two new installs on the same machine. One install was with the 7.00.05 full install package of DotNetNuke. The other install was with an older version of DotNetNuke 6 to which I applied the 7.00.05 upgrade. As suspected, in the full install website, the Edit button would not work. In the upgraded website, the Edit button worked as expected.

I decided to pull the two web.config files and compare them using a Powershell script. There were many differences in the two, but I found one difference in particular which seems to have solved my problem. The upgraded website had an entry for the FormsAuthentication module in the system.webServer section. and this entry was missing from the full install. This may be by design, I am not sure. But putting that entry in web.config on the full install version solved my issue.
Please attempt editing your web.config file at your own risk. Note that the system.webServer and modules nodes should already be there along with several other entries. The only entries you should add are in red type.

<system.webServer>
   <modules>
      <remove name="FormsAuthentication" />
     <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="" />
</modules>

<system.webServer>

Hope this helps you out. If you find additional solutions to the issue, let me know. I will gladly add them to the list.

Best Recommended DotNetNuke Hosting

ASPHostPortal.com

ASPHostPortal.com is the leading provider of Windows hosting and affordable DotNetNuke Hosting. DotNetNuke Hosting from ASPHostPortal.com provides a safe, reliable and performance-driven foundation for your DotNetNuke website. DotNetNuke is the perfect Content Management System for managing and developing your website with one of ASPHostPortal’s Hosting plans. ASPHostPortal has ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.5.2, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch, ASPHostPortal guarantees the highest quality product, top security, and unshakeable reliability, carefully chose high-quality servers, networking, and infrastructure equipment to ensure the utmost reliability.



DotNetNuke Hosting - ASPHostPortal.com :: Single Sign-on (SSO) and Modulesharing in DotNetNuke CE 06.01.00 and above

clock Januarie 29, 2015 06:42 by author Dan

One issue that is confronting you now and again as a dotnetnuke expert is the smoldering yearning of clients to have a solitary sign-on answer for their multi-entryway framework. Regularly they have diverse entryways for their organization offices or separate intranet and web entrances or some other multiportal needs. At the same time none of these clients comprehend the need of logging seperatly into each and every entryway! What's more for the framework executives it is a bad dream to keep all these client accounts in sync! A considerable measure of business and open source modules and suppliers served to take care of this issue previously.

An alternate inconvenience is the inconceivability to impart content between entries. Consider  a desktop program site and his portable friendly (acknowledged as two entries). On the off chance that you compose an article in the desktop gateway and you need to demonstrate this uncommon article on the portable entry as well, what did you need to do ? Yes, duplicate and glue! Conceivable, however not exceptionally rich!

Since Version 6.1  of Dotnetnuke  there is an answer for this in the Proffessional Version (PE). Lamentably this should be excluded in the group version of DNN. Yet you ought to realize that the usefulness is actualized in the center and just the organization module is inadequate in the CE form! So you have the capacity utilize this, even in  CE, with negligible changes straightforwardly in the database:

Base of all the functionality is the new table “PortalGroups”:

For every group of portals we need to insert here one record:

Next to the Portalgroupname and the Portalgroupdescription, which are selfexplaining, and the normal fields Createdondate, Createdbyuserid and so forth , just  Masterportalid and Authenticationdomain  are intriguing. Masterportalid  ought to be supplanted with the portalid of the entryway which ought to be utilized as the entry where the client logs later on. Authenticationdomain ought to be loaded with the space name of the expert entryway (e.g. www.yourdomain.com)

Presently we need to fill in the Portalgroupid of the recently made portalgroup into the field with the same name in the comparing Portal records and our SSO arrangement is finished:

Tip: Eventually you have to recycle the Applicationpool to see your results!

And now see how this affects your portal administration:

Add an existing module – before

 

Add an existing module – after

And after login in the main portal the user is also automatically logged in into the child portal and all users of both portals show up together in the user administration!

Please make a special effort to be mindful of this:

  • A client made on the expert entryway is known on all entrances of the entrance bunch
  • Login at an entryway consequently logs you into all entrances with the same area (incl. subdomains + childportals). SSO for different areas does NOT work (yet you can log in with the same client certifications)

Best DotNetNuke Hosting Recommendation

ASPHostPortal.com
ASPHostPortal.com provides its customers with Plesk Panel, one of the most popular and stable control panels for Windows hosting, as free. You could also see the latest .NET framework, a crazy amount of functionality as well as Large disk space, bandwidth, MSSQL databases and more. All those give people the convenience to build up a powerful site in Windows server. ASPHostPortal.com offers DotNetNuke hosting starts from $5/month only. We also guarantees 30 days money back and guarantee 99.9% uptime. If you need a reliable affordable DotNetNuke Hosting, we should be your best choice.



DotNetNuke Hosting With ASPHostPortal :: How To Setting up your DotNetNuke Module Development Environment

clock Januarie 28, 2015 05:50 by author Mark

Setting up your DotNetNuke Module Development Environment

Today I will explains about how setting up your DotNetNuke module development environment. Setting up your development environment can vary based on what your end goal is. If you are doing module development for your own use, and within your own DNN environments, you can ignore a few of the settings below. If you are doing module development with the idea that you might turn around and give the modules away, or sell them, then you will likely want to follow the guidelines set forth below to support the widest array of DNN installation environments.
I recommend that each developer have their own local development environment, with a local IIS website running DotNetNuke, and a SQL Server 2008/2012 (not express, though you can use it) database for the website. Having an individual development environment makes group module development far easier than if you share environments/databases.

Choosing a DotNetNuke Version

Choosing a version of DotNetNuke is important when you start your development for couple of reasons. For modules that you are developing for yourself, you need to ask, what is the minimum version of DotNetNuke that you have in production. Are you running DNN 5.6.1? Are you running 6.2.6, 7.0.0, 7.0.6? Based on the answer you can determine what version of DNN you should setup as your development environment. You shouldn't be developing on a newer version of DNN than what you have running in production. As with everything there are ways around this, but I am not going to go into the details on that in this tutorial.

As a developer working to create modules and release those, you might have production sites that are running on the latest and greatest version of DNN, but what about your customers? Or your potential customers? You have to ask yourself, do you want to provide support for really old versions of DotNetNuke? From a development perspective you will probably say no, but from a business perspective, you might say yes, and here’s why. Not everyone upgrades DotNetNuke websites as they should, and often times you will find that some people never upgrade. While I don’t advise taking that approach to managing a DotNetNuke website, it is a fact of life that people don’t always upgrade and there are thousands of people, if not tens of thousands, that have sites that aren’t running on the latest version of DNN. You should take that into account when you are doing your module development, if you compile your module against an older version of DNN then your module should run on newer versions of as well, for example. If you compile your module against DotNetNuke 6.2.6 it will likely run on every version of DNN released since then. Though there are extended cases where this won’t always work, DNN strives to maintain backwards compatibility, this isn't always possible.

You might also want to use features that are only available starting with a specific version of DotNetNuke, such as the workflow functionality found starting in DNN 5.1, in that case you may choose not to support older versions of the platform out of necessity. This will minimize the market in which you can sell your modules, but also can make for less support and an easier development cycle due to the features that DNN provides.

Choosing a Package

Now here’s one that may baffle you a bit. I’m going to recommend that you use the INSTALL package for whatever version of DotNetNuke that you download. What? The INSTALL package? What about the SOURCE package? Well you can use the source, but you don’t need it. The module development that I’m setting you up for doesn't require the DNN source, and using the INSTALL package makes your development environment cleaner. We aren't going to be opening the DotNetNuke project when we do our module development, so why have the files sitting around for nothing? Also, if you've ever tried to use the SOURCE package for anything, you'll know it isn't easy.
The steps for setting up your development environment will apply to both the Community and Professional editions of DotNetNuke.

Installation Configuration

Once you have the version selection out of the way you can go through the installation process. While I’m not going to walk you through the minutest of details of each step of installing DotNetNuke in this post, I will at least try to point you in the right direction for each step.

Download the INSTALL package of the version of DotNetNuke you want to use in your development environment.

Extract the files in the INSTALL package to a location of your choosing, this location is where you will point IIS (the web server) when we can configure the website. In my environment I typically use c:\websites\dnnxxx.me\ (One item of note: you may need to right click on the ZIP file and choose Properties before extracting, on the properties window if you have an UNBLOCK option, click that. Some versions of Windows have started blocking files within the DotNetNuke ZIP files, which will cause you problems later during the actual install.)

Setup IIS

IIS is the web server that comes with Windows computers. DNN 7 requires IIS 7 or later (7,7.5,8.0), so you will need at least Windows Vista, Windows 7, Windows 8, or Windows Server 2008 R2, Windows Server 2012.

In IIS you should create a new website (Note: If you use an existing website in IIS be sure to add the HOST binding for DNNxxx.ME), and point to the folder where you extracted the INSTALL package.

Note: With DotNetNuke 7.0+, .NET Framework 4.0 is required, so be sure that your application pool is configured to run under 4.0, and not 2.0.

Set File Permissions

Setting up the file permissions for your DNN install is often the step that causes the most trouble. You should right click on the FOLDER in which you extracted DNN (c:\websites\dnnxxx.me\) and choose properties. Choose the Security tab. You need to add permissions for the account in which your website's application pool is running under. You will want to setup the permissions to give the account Full or Modify permissions for the DNNxxx.ME folder. Which account you will use will vary based on your version of IIS, here’s a simple list of some of the default accounts based on the version of IIS.

IIS Version Operating System Account

  • IIS 7 Windows Vista, Windows Server 2008 localmachine\Network Service
  • IIS 7.5 Windows 2008 R2, Windows 7 IIS AppPool\APPPOOLNAME
  • IIS 8 Windows 2012, Windows 8 IIS AppPool\APPPOOLNAME

Note: If you are using IIS7.5/8.0 you’ll notice in the above table that we have APPPOOLNAME in the identity, this is because when you setup a new website in IIS a new application pool is created. In place of you should type in the name of the application pool that was created. You can also bypass this and configure your application pool to use the Network Service account instead of a dynamic account if you would like.

Database Configuration

In SQL Server you should go through and create a new database. I always create a database with the same name as the website, so in this case DNNxxx.ME. Once you have created the database, create a user that can access that database. I always use SQL authentication, turn off the enforce password requirements, and give the user DB Owner and Public access to the DNNxxx.ME database. Remember the username and password you create here as you will need them when you walk through the Installation screen for DotNetNuke.

DotNetNuke Installation Screen

Populate the installation screen with the standard DNN information, Host username, password, etc. For the Database option, choose Custom and configure your database connection, providing the Server IP/Name, the Database name (dnnxxx.me). For the database authentication you'll want to choose the option that allows you to enter the username/password for the database user that you created previously.

Now there are two additional options you can configure, normally I would tell you not to modify these, but from a development environment perspective I do recommend that you change the objectQualifier setting. It should be blank by default, you should type in “dnn” (without quotes), this will prepend “dnn_” to all of the objects that get created by DNN such as Tables and Stored Procedures. This is not something I recommend from a production stand point, but if you are developing modules for sale, then supporting objectQualifier in your development is recommended. It will save you time down the road if you have a customer who has an objectQualifier defined on their production databases.

Best Recommended DotNetNuke Hosting

ASPHostPortal.com

ASPHostPortal.com is the leading provider of Windows hosting and affordable DotNetNuke Hosting. DotNetNuke Hosting from ASPHostPortal.com provides a safe, reliable and performance-driven foundation for your DotNetNuke website. DotNetNuke is the perfect Content Management System for managing and developing your website with one of ASPHostPortal’s Hosting plans. ASPHostPortal has ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.5.2, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch, ASPHostPortal guarantees the highest quality product, top security, and unshakeable reliability, carefully chose high-quality servers, networking, and infrastructure equipment to ensure the utmost reliability.



About ASPHostPortal.com

We’re a company that works differently to most. Value is what we output and help our customers achieve, not how much money we put in the bank. It’s not because we are altruistic. It’s based on an even simpler principle. "Do good things, and good things will come to you".

Success for us is something that is continually experienced, not something that is reached. For us it is all about the experience – more than the journey. Life is a continual experience. We see the Internet as being an incredible amplifier to the experience of life for all of us. It can help humanity come together to explode in knowledge exploration and discussion. It is continual enlightenment of new ideas, experiences, and passions

Author Link


 photo ahp banner aspnet-01_zps87l92lcl.png

Corporate Address (Location)

ASPHostPortal
170 W 56th Street, Suite 121
New York, NY 10019
United States

Tag cloud

Sign in