Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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
在ASP.NET中执行SQL的最佳方法_Sql_Asp.net_Sql Server_Vb.net - Fatal编程技术网

在ASP.NET中执行SQL的最佳方法

在ASP.NET中执行SQL的最佳方法,sql,asp.net,sql-server,vb.net,Sql,Asp.net,Sql Server,Vb.net,场景 我有一个关于ASP.NET中代码隐藏与SQL Server数据库交互的最佳实践和最有效的方法的问题 目前,我正在为编写一个应用程序,该应用程序有许多表单用于读取和写入不同的SQL Server表 到目前为止,我的方法是从aspx页面的codebehind收集信息,并将其传递给特定类。例如: 在Customer.aspx页面上的createNewCustomer\u单击event,我创建一个名为Customer的类的新实例,并通过属性收集客户信息。然后调用Customer类中的insertN

场景

我有一个关于ASP.NET中代码隐藏与SQL Server数据库交互的最佳实践和最有效的方法的问题

目前,我正在为编写一个应用程序,该应用程序有许多表单用于读取和写入不同的SQL Server表

到目前为止,我的方法是从aspx页面的codebehind收集信息,并将其传递给特定类。例如:

Customer.aspx
页面上的
createNewCustomer\u单击
event,我创建一个名为
Customer
的类的新实例,并通过属性收集客户信息。然后调用
Customer
类中的
insertNewCustomer
方法将信息插入数据库

public sub insertNewCustomer()
    dim sqlCommand as string="INSERT INTO CUSTOMER ([NAME],[REGNUM]) VALUES (@NAME,@REGNUM)"
    Dim paramName() as string={"NAME","REGNUM"}
    Dim paramValue() as object={_name,_regnum}     ' variables gathered via properties

   Dim sql as new CSQL(sqlCommand,paramName,paramValue,paramName.Count())
   sql.process()
end sub
因此,在我创建了
SqlCommand
字符串之后,我创建了一个数组来保存参数名和一个数组来保存参数值

然后,我将该信息传递给另一个名为
CSQL
的类,该类创建
SqlConnection
SqlCommand
并添加
SqlParameter

问题

我遇到的问题是,这个过程需要花费大量时间来创建单个表单和每个SQL操作。此外,它很难维护,例如,如果SQL表中有更改,我需要更改
Customer
类中指定的所有
SqlCommand

问题


我想知道的是,如何在vb.net中创建类,以便更有效地与SQL Server数据库交互,并减少为它们创建、维护和调试代码的时间。

有许多工具、扩展和框架在创建代码部分方面做得很好,尤其是为或

如果您的数据库是Microsoft SQL Server,我建议使用LINQ to SQL,它会生成更干净、更好的SQL,最大的优点是它附带了.NET Framework,因此您不需要部署其他库


如果您正在使用其他数据库服务器,实体框架是您的最佳选择。

查看实体框架谢谢John。你的意思是使用数据集、数据表和表适配器不,他是指使用实体框架或类似的东西来为你做大部分工作。但是,请注意,没有什么比“最佳方法”更好的方法,只有适合您当前情况、需求、偏好等的最佳方法。您必须打电话,并根据您的情况选择最合适的方法。不,我指的是使用。我想您应该更多地研究它。它非常灵活。