我创建了几个DNN(5.2.3)模块,我发现如果对象数据源(ODS)上发生错误,DNN将向每个人显示该错误。下面显示了一个示例(虽然在这种情况下不是ODS特定错误)。这对用户没有意义。异常应该是“未找到的东西”或类似的东西给用户。问题是这个DropDownList绑定到ODS。所以我的问题是:
样品: 'SelectedThingDropDown'具有一个无效的SelectedValue,因为它在项目列表中不存在。参数名称:值
PS>我知道try / catch Exceptions.ProcessModuleException(e,ex)。问题是这对ODS绑定不起作用,除非我做错了。
答案 0 :(得分:1)
在处理ODS和DropDownList时,您可以检查多个地方。以下列出了其中一些。
ListItem item = ddl.Items.FindByValue('');
if(item != null) item.selected = true;
请记住,模块加载异常只有在您没有处理异常的情况下才存在,如果您认为它们对用户没有帮助,您可以通过自己的用户通知方法在try catch的帮助下覆盖它们说过。但不要忘记在事件日志中为错误创建条目,以便您可以跟踪错误并对其进行优化。
祝你好运。