gpt4 book ai didi

.net - 在 GUI 线程中访问数据库,不是吗?

转载 作者:太空狗 更新时间:2023-10-30 01:54:08 27 4
gpt4 key购买 nike

我正在研究一些 MSDN 示例和 ADO.Net 上的一些书籍。它们的共同点是使用 Visual Studio 中的指向/单击/拖放设计时功能来开发数据库应用程序、将数据集绑定(bind)到控件等。

据我所知,生成的代码在 GUI 线程中执行所有数据库访问。这听起来像是不好的做法,而且一旦查询开始耗时,数据库访问应用程序就会出现恼人的行为。

我错过了什么吗?这是我们应该如何开发数据库应用程序吗?对于将网络 IO 放在单独的线程中,我通常不会三思而后行。

最佳答案

是的,除非您真的不关心 GUI 挂起,否则这是个坏主意。在某些情况下,特别是对于“快速而肮脏”的工具,这实际上是正确的选择。如果这意味着您可以为用户提供一些东西,而用户无论如何都会使用它几天,并且关心尽快完成工作而不是始终拥有响应式 UI,那么在线程之间浪费时间就没有意义了。

但是不,这不是您要开发旨在保持响应的数据库应用程序的方式。

但是,我可以理解为什么书籍和教程会这样做 - 至少在某种程度上是这样。如果他们试图教你数据库访问而不是线程,这意味着更大比例的代码将与主题相关,而不是一切都是绝对的“生产代码”。我从经验中知道,很难像人们希望的那样保持“教学代码”的整洁。

但是,我认为这样的教程和书籍预先解释这一点是个好主意,这样它们就不会养成坏习惯。

关于.net - 在 GUI 线程中访问数据库,不是吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1035439/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com