我即将为我的网页编写多种后端C#方法从我页面本身的17个控件更新数据库中的数据。
在我编写17个处理数据库更新过程的方法之前,我想知道编写一个巨大的方法来处理我的网页所有控件的所有更新脚本是否更有效率?我将与SQLCommand一起使用SQLConnection对象来实现此目的。
我想阻止的是我的网页中长时间运行的查询,因为方法太多(如果可能的话)
默认情况下,如果我的控件保持为空,则数据库中我的表中没有相应的数据(如职业标题)必须更改。
那么为我的17个控件编写17种不同的方法会更好吗?或写一个大的验证方法来搜索每个控件的内容并在之后运行更新脚本?
稍作澄清
我想为每个控件编写的这17个方法只有在相应的控件没有默认值时才会被调用(所以如果textbox 5为空,那么将不会调用textbox 5的Update方法)。 p>
答案 0 :(得分:2)
可能值得确保它只有一个数据库调用,但是如果两个方法实际上做同样的事情,它是一个方法还是17个根本没有显着差异。可能存在无关紧要的差异,但与数据库交谈所花费的时间将使其他任何事情都相形见绌。
答案 1 :(得分:1)
最好只对sql server执行一次更新请求。与sql server通信的开销将是更新中最慢的部分,如果你对服务器上的存储过程进行一次调用,这将比17次调用服务器快17倍。
答案 2 :(得分:1)
数据库的开销远远超过方法调用调用的微不足道的开销。
通常,在您有证据表明需要之前,不要牺牲可维护的代码来提高性能。
请注意,这是假设两个选项的数据库工作流程相同!对数据库进行17次调用而不是一次调用绝对会严重影响性能。