使用以下代码,我可以使用 TabController 类在DotNetNuke中添加新的标签。
TabController.AddTab(...)方法采用 TabInfo 对象。
我的问题是我想将新tabInfo的 ParentId 设置为 null ,但它不是可以为空的。
这是我的代码:
TabInfo newTab=new TabInfo();
newTab.PortalId=PortalId;
newTab.Title="some title";
/*...*/
newTab.ParentId=0 /*--here is my problem--*/
TabController controller = new TabController();
controller.AddTab(newTab);
如果 ParentId 不存在,则会导致外键错误...
如何将选项卡的ParentId设置为null?!
答案 0 :(得分:1)
我只是将 ParentID 设置为我确定存在的页面...
之后,在下面的脚本中,我将新标签的 ParentID 设置为 null
TabInfo tab;
tab=new TabInfo()
//set properties of tab object...
//..
tab.ParentId = 38;//38 is my main page tabID
//...
//add new tab code
tabid = controller.AddTab(tab);
//update parentID code
DotNetNuke.Data.DataProvider.Instance().ExecuteSQL("update tabs set parentid=null where tabid=" + tabid);
修改强>
基于Javier回答评论结果如下:
tab.ParentId = DotNetNuke.Common.Utilities.Null.NullInteger;