我很难找到可以为我的dnn页面添加代码隐藏的地方.
例如:
MyPage.ascx已经有了
<%@ Control language="vb" CodeBehind="~/admin/Skins/skin.vb" AutoEventWireup="false" Explicit="True" Inherits="DotNetNuke.UI.Skins.Skin" %>
Run Code Online (Sandbox Code Playgroud)
为了塑造皮肤需要它.
但是,我希望能够添加在Page_Load上执行的VB函数,因此我创建了自己的代码隐藏文件.但我无法取出当前的控件(一个引用skin.vb)来放入我自己的控件,而且你不能拥有多个控件.
我也试过在代码中嵌入代码,但是我需要做一些Imports,它给我一个错误,说它们必须在文件的开头等声明等等...
任何人都知道如何正确添加DNN页面的代码隐藏?
我想在dotnetnuke 5.6.3中使用jQueryUI的tab小部件我在我的模块中注册了jQueryUI并且它工作正常但是当我在我的页面中使用部分渲染时它无法加载.
这是我的代码:
$(document).ready(function () {
rastaAdmin();
});
function rastaAdmin() {
var tabdiv = $('#tabul');
var tabvar = tabdiv.tabs();
}
Run Code Online (Sandbox Code Playgroud)
这个网站有一个解决我的问题的方法,但它在我的脚本中不起作用.
阅读上面的网站后,我将我的代码更改为:
$(document).ready(function () {
rastaAdmin();
});
function pageLoad(sender, args) {
rastaAdmin();
}
function rastaAdmin() {
var tabdiv = $('#tabul');
var tabvar = tabdiv.tabs();
}
Run Code Online (Sandbox Code Playgroud)
这对我不起作用.
我能做什么?
谢谢
到目前为止,我已尝试下面的代码通过我的页面在DNN中的代码添加模块.
protected void Page_Load(object sender, EventArgs e)
{
ModuleController MC = new ModuleController();
ModuleInfo MInfo = new ModuleInfo();
MInfo = MC.GetModule(507, 116,false);//Just Hard coded for testing
MInfo.TabID = PortalSettings.ActiveTab.TabID;
MInfo.PaneName = "ContentPane";
MInfo.Alignment = "left";
MC.AddModule(MInfo);//Line throwing error :-
}
Run Code Online (Sandbox Code Playgroud)
我想上添加一个模块,它是存在tabid=116且moduleId=507在我当前标签页或页面pageLoadEvent.But最后一行抛出一个错误说
"Violation of UNIQUE KEY constraint 'IX_TabModules_UniqueId'. Cannot insert duplicate key in object 'dbo.TabModules'. The duplicate key value is (555ba77a-be19-40a0-bb72-559672230345)."
Run Code Online (Sandbox Code Playgroud)
请告诉我我在哪里做错了?这是添加模块的正确方法吗?
我已经创建了应该使用一些JQuery插件的自定义DNN模块.
我加载插件很好.
但得到错误:
Uncaught TypeError: undefined is not a function imagesloaded.js?cdv=18:93
Uncaught TypeError: Object [object Object] has no method 'imagesLoaded' Masonry:755
GET http://dnn7site/jquery.min.map 404 (Not Found) Masonry:464
GET http://dnn7site/resources/shared/scripts/jquery/jquery.min.map 404 (Not Found)
Run Code Online (Sandbox Code Playgroud)
我认为这是因为JQuery我的自定义模块中没有导入.我包括其他JS文件,如:
<dnn:DnnJsInclude runat="server" FilePath="~/DesktopModules/com.demo.masonry/Scripts/jquery.infinitescroll.min.js" />
<dnn:DnnJsInclude runat="server" FilePath="~/DesktopModules/com.demo.masonry/Scripts/masonry.pkgd.js" />
<dnn:DnnJsInclude runat="server" FilePath="~/DesktopModules/com.demo.masonry/Scripts/imagesloaded.js" />
Run Code Online (Sandbox Code Playgroud)
但我不知道如何导入JQuery,任何帮助?
我正在使用DNN 7.1.1
AFAIK,DotNetNuke网站自动生成您的Google Analytics跟踪代码.
最近,如果您希望使用人口统计等新功能,Google建议您更改需要使用的跟踪代码(对此).知道如何自定义DotNetNuke生成的GA代码吗?
我查看了DNN数据库,GA代码或UA在那里看不到.还没有运气检查语言编辑器.
我正在尝试将自定义属性保存到DNN 7中的现有用户配置文件,但配置文件属性未设置.我必须正确理解一些事情.
那么,如何在DNN中正确设置自定义配置文件属性?
UserInfo.Profile.SetProfileProperty("key","value")
// I expect this to return "value", but it's always ""
var value = UserInfo.Profile.GetProfileProperty("key");
// Even if I save it...
ProfileController.UpdateUserProfile(UserInfo);
// It always returns ""
var savedValue = UserInfo.Profile.GetProfileProperty("key");
Run Code Online (Sandbox Code Playgroud)
注意:我也尝试过InitialiseProfile,但这并未改变行为.
我已经实现了一个模块,我将其分为两部分:
这是我的路由器映射器类: -
using DotNetNuke.Web.Api;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
namespace NewController
{
public class RouteMapper : IServiceRouteMapper
{
public void RegisterRoutes(IMapRoute mapRouteManager)
{
mapRouteManager.MapHttpRoute("NewController", "default", "{controller}/{action}",
new[] { "NewController" });
}
}
}
Run Code Online (Sandbox Code Playgroud)
我已多次检查我的命名空间和文件夹名称,但没有发现任何错误.
My Controller namespace is like below:-
using DotNetNuke.Common.Utilities;
using DotNetNuke.Web.Api;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace NewController
{
public class NewInfoController : …Run Code Online (Sandbox Code Playgroud) 我正在管理一个DNN网站,并试图找到应用于我主页上某些元素的"宽度:100%"内联样式的来源.DNN中包含的一大堆JS库难以手动解析,但我已经打开了Chrome开发者工具,并在"源"选项卡中搜索了加载到页面上的每个JS文件,以查看"100%"的位置正在使用.没有骰子.
我知道Break on ...> Attributes Modifications功能.这一直被引用为我在SO上发现的类似问题的解决方案:
如何跟踪修改DOM中div的内联样式的javascript?
查找Javascript应用的内联样式来调试Javascript
问题是,与Sources选项卡中的调试JavaScript不同,刷新网页时,"元素"选项卡中HTML元素的调试点会被擦除,而我尝试跟踪的脚本仅在页面加载时运行一次,而不会再次运行在运行时,所以断点永远不会被击中.
是否还有其他方法可以确定在页面加载期间DOM中特定元素的属性何时或何地发生变化?或者可能跟踪特定属性?
javascript css dotnetnuke inline-styles google-chrome-devtools
最近我创建了一个模块来为依赖它的其他模块安装基本的东西.我必须手动更改web.config以便所有模块都能正常工作,我想知道是否有任何方法可以在模块安装过程中自动化它.
dotnetnuke ×10
dotnetnuke-7 ×3
asp.net ×2
javascript ×2
c# ×1
code-behind ×1
css ×1
jquery ×1
jquery-ui ×1
vb.net ×1