加载 ASP.NET DropDownList 对象

发布于 2024-10-01 02:19:11 字数 458 浏览 1 评论 0原文

下面的示例显示了在 ASP.NET 中加载 DropDownList 哪种方法是首选,为什么?

方法 1:

构建一个加载实体信息的 ListItem 对象数组,并使用 DropDownList.Items.AddRange 方法加载列表。

方法 2:

构建实体对象的 BindableList 集合,并使用 DropDownList.DataSource 方法加载列表。

方法 3:

构建实体对象的 List 集合,并使用 DropDownList.DataSource 方法加载列表。

提前致谢。

From the examples below showing the loading of a DropDownList in ASP.NET which method is preferred and why?

Method 1:

Build an array of ListItem objects loaded with entity information and use the DropDownList.Items.AddRange method to load the list.

Method 2:

Build a BindableList<T> collection of entity objects and use the DropDownList.DataSource method to load the list.

Method 3:

Build a List<T> collection of entity objects and use the DropDownList.DataSource method to load the list.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花伊自在美 2024-10-08 02:19:11

所有方法对于下拉菜单的结果都相同,但各有优缺点。以下是一些简短的答案:

方法 1 与列表控件紧密结合。我不喜欢使用方法 1,因为它不能提供太大的灵活性,如果将来我必须将数据绑定到网格,它将无法工作。

速度:如果ListItem太多,此方法会慢一些。因为您必须将业务实体转换为 ListItem 对象才能填充下拉列表。


如果您选择使用 TwoWay 数据绑定,方法 2 是不错的选择。但asp.net默认控件和机制不支持它,因此与下拉列表一起使用是徒劳的。

速度:这个方法会快一点,因为BindableList实现了IEnumerable,并且当DataBind被调用时它会被迭代一次。


方法 3 是最好的选择,因为它是通用的、可扩展的,并且还可以与 .net 中的任何可绑定对象一起使用。

速度:该方法与方法2相同,因为List也实现了IEnumerable,并且在调用DataBind时会迭代一次。

All methods results same for dropdown but have their own pros and cons. Here are some short answers:

Method 1 is tightly coupled with List Controls. I don't prefer using method 1 because it don't provide so much flexibility if in future i'll have to bind to data to a grid it will not work.

Speed: This method will be a bit slower if there are too many ListItems. Because you will have to Convert Business Entities to ListItem Object in order to fill dropdown.


Method2 is good option if you choose to work with TwoWay databinding. But it is not supported in asp.net default controls and mechanism, so it will be used in vain with dropdown list.

Speed: This method will be little faster because BindableList implements IEnumerable and it will be iterated once when DataBind is called.


Method 3 is preferably good option because it is generic and extensible and can also work with any bindable object in .net.

Speed: This method will be same as Method2 because List also implements IEnumerable and it will be iterated once when DataBind is called.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文