【发布时间】:2011-01-25 15:17:08
【问题描述】:
我正在使用 C# 开发 DotNetNuke 模块,为了减少复杂性,我选择尝试将模块的配置保持在一页中(标准设置模块除外)。我现在想知道这个想法有多明智。
我的模块是一个简单的图片库,包含一张或多张图片。每个图像都有一个标题、一个图像源(url)和一个目标(另一个 url)。因此,我认为对于我的管理界面,我可以有一个简单的数据“网格”,您可以在其中编辑所有现有条目或添加新条目,所有这些都在同一页面上,有点像这样:
标题图片 URL 锚点 HREF [照片! ] [http://www.example.com/image.jpg ] [http://www.example.com] [另一张图片!] [http://www.example.com/image2.jpg] [http://www.example.net] [ ] [ ] [ ]
浏览 WebControls,我发现了 GridView,乍一看,这似乎是我正在寻找的东西。然而,仔细看,我发现它需要直接绑定到数据源,而 DotNetNuke 在数据访问层中做事的标准似乎是创建数据对象的集合,如下所示:
// EditDiscovery.ascx.cs
DiscoveryController objDiscoverys = new DiscoveryController();
List<DiscoveryInfo> lstDiscoveries = objDiscoverys.GetDiscoverys(ModuleId);
// DiscoveryController.cs
public List<DiscoveryInfo> GetDiscoverys(int ModuleId) {
return CBO.FillCollection<DiscoveryInfo>(DataProvider.Instance().GetDiscoverys(ModuleId));
}
GridView 是否缺少某些内容,或者我是否应该更改 GetDiscoverys 函数以返回 DataSet 而不是 DiscoveryInfo 对象列表?或者是否有更好的方法可以更好地与 DotNetNuke 的 DAL 保持一致?
【问题讨论】:
标签: asp.net gridview dotnetnuke web-controls