Does anyone know if there is a way of automatically installing an extension on DNN using .net ?
It used to be possible using the infamous Install.aspx
page, which has been removed for security reasons.
I've tried refactoring the code within Install.aspx
so as to automate this, or even run it for a single module, but no luck. I've just got to the point where the zip has gets unpackaged, but what I really want is to know which and how the tables in the Sql Server database get modified.
I would appreciate any pointers on this.
It is quite hard to find all the tables that get updated, as well as the data that gets put into them.
My solution was to simply do a http call on a copy of the installation page. This call can be done programmatically from, say, a desktop app.
For some reason the original Install.aspx
won't run if you add it to the DNN installation.
Step by step process:
Find the Install.aspx
and Install.aspx.cs
files. They are deleted after the first installation, but you can get them from the original download.
Make a copy of these two files and rename them, e.g. MyInstall.aspx
and MyInstall.aspx.cs
In Visual Studio run the DNN installation as a web site, not as a web project.
Now the page MyInstall
will work just as the Install
did. You can pass the parameters in the url.
Before you call the page, you need to put your module packages into the corresponding folder e.g. for modules install/module
of the DNN Installation. To create the module package use Christoc's VS templates.