开发者

DotNetNuke code behind on custom modules only work when logged in or debugging

I have a dnn site that I am upgrading. The task are to upgrade from 4.08 to 5.06 and install catalook along with some custom modules to display the catalook data. The module code works fine and on the first load of the page every thing is ok. Clicking on any link or action button appears to just refresh the screen without executing 开发者_运维问答any module code.

however, if I am logged in as an admin or debugging the module code, everything works as expected

thoughts anyone?


Ok, I figured out the problem. The manifest in the module had a default cache of 60, DNN caches the results of the request. Perhaps it would be better if dnn also cached the querystring parms and if they changed, dump the cache and rebuild it (VaryByParam). The solution is simple.

  1. Fix the manifest so if you ever install on another instance it will be correct.

  2. Fix the existing settings. You can visit each module setting (host - modules) and change the cache values so that when you add it to another page, it will be correct.

  3. Fix the modules that are installed on pages. This can be quite tedious if your module is used a lot (mine were). A fast way is to issue an update statement against TabModules to set the cache settings for each module loaded on pages.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜