Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在OnInit与PageLoad中设置SqlDataSource属性_C#_Sql_Asp.net_Sql Server - Fatal编程技术网

C# 在OnInit与PageLoad中设置SqlDataSource属性

C# 在OnInit与PageLoad中设置SqlDataSource属性,c#,sql,asp.net,sql-server,C#,Sql,Asp.net,Sql Server,我想将一些SQL代码从aspx页面移到代码隐藏页面。SQL代码绑定到数据源对象 我不确定是将此代码添加到OnInit,还是添加到PageLoad。哪一个重要,还是有比另一个更好的地方?我认为,OnInit更有意义,因为我在将Select/Update命令和参数实际用于活动连接之前绑定了它们 Init更好。这是设置控件属性的地方,因此您将获得最接近于在标记中设置控件属性的内容。另一方面,我的建议是移动到ObjectDataSource,并从代码背后提取数据访问代码。您的标记+代码隐藏相当于MVC术

我想将一些SQL代码从aspx页面移到代码隐藏页面。SQL代码绑定到
数据源
对象


我不确定是将此代码添加到
OnInit
,还是添加到
PageLoad
。哪一个重要,还是有比另一个更好的地方?我认为,
OnInit
更有意义,因为我在将Select/Update命令和参数实际用于活动连接之前绑定了它们

Init更好。这是设置控件属性的地方,因此您将获得最接近于在标记中设置控件属性的内容。另一方面,我的建议是移动到ObjectDataSource,并从代码背后提取数据访问代码。您的标记+代码隐藏相当于MVC术语中的视图,数据访问代码不属于该视图。如果您正在进行认真的重构,那么值得研究MVP模式。使用此模式,您可以获得MVC等价的关注点分离和Web表单的可测试性。MVP实际上是一种MVC模式