SqlDataSource 构造函数

定义

初始化 SqlDataSource 类的新实例。

重载

SqlDataSource()

初始化 SqlDataSource 类的新实例。

SqlDataSource(String, String)

使用指定的连接字符串和 Select 命令初始化 SqlDataSource 类的新实例。

SqlDataSource(String, String, String)

使用指定的连接字符串和 Select 命令初始化 SqlDataSource 类的新实例。

SqlDataSource()

初始化 SqlDataSource 类的新实例。

public:
 SqlDataSource();
public SqlDataSource ();
Public Sub New ()

另请参阅

适用于

SqlDataSource(String, String)

使用指定的连接字符串和 Select 命令初始化 SqlDataSource 类的新实例。

public:
 SqlDataSource(System::String ^ connectionString, System::String ^ selectCommand);
public SqlDataSource (string connectionString, string selectCommand);
new System.Web.UI.WebControls.SqlDataSource : string * string -> System.Web.UI.WebControls.SqlDataSource
Public Sub New (connectionString As String, selectCommand As String)

参数

connectionString
String

用于与基础数据库建立连接的连接字符串。

selectCommand
String

用于从基础数据库中检索数据的 SQL 查询。 如果该 SQL 查询是参数化的 SQL 字符串,可能需要将 Parameter 对象添加到 SelectParameters 集合中。

示例

下面的代码示例演示如何使用 SqlDataSource 构造函数创建SqlDataSource控件。 该示例不同寻常,因为 SqlDataSource 控件不是在 Web 窗体页面上使用,而是在中间层对象的实现中用作业务对象与数据库交互的简单方法。 该示例使用存储在 Web.config 文件中的连接字符串。

此代码示例是为 ObjectDataSource 类提供的一个更大示例的一部分。

// Returns a collection of NorthwindEmployee objects.
public static ICollection GetAllEmployees () {
  ArrayList al = new ArrayList();

  ConnectionStringSettings cts = ConfigurationManager.ConnectionStrings["NorthwindConnection"];

  SqlDataSource sds
    = new SqlDataSource(cts.ConnectionString, "SELECT EmployeeID FROM Employees");

  try {

    IEnumerable IDs = sds.Select(DataSourceSelectArguments.Empty);

    // Iterate through the Enumeration and create a
    // NorthwindEmployee object for each ID.
    foreach (DataRowView row in IDs) {
      string id = row["EmployeeID"].ToString();
      NorthwindEmployee nwe = new NorthwindEmployee(id);
      // Add the NorthwindEmployee object to the collection.
      al.Add(nwe);
    }
  }
  finally {
    // If anything strange happens, clean up.
    sds.Dispose();
  }

  return al;
}
' Returns a collection of NorthwindEmployee objects.
Public Shared Function GetAllEmployees() As ICollection
   Dim al As New ArrayList()

   Dim cts As ConnectionStringSettings = ConfigurationManager.ConnectionStrings("NorthwindConnection")
   Dim sds As New SqlDataSource(cts.ConnectionString, "SELECT EmployeeID FROM Employees")
   Try
      Dim IDs As IEnumerable = sds.Select(DataSourceSelectArguments.Empty)

      ' Iterate through the Enumeration and create a
      ' NorthwindEmployee object for each ID.
      For Each row As DataRowView In IDs
         Dim id As String = row("EmployeeID").ToString()
         Dim nwe As New NorthwindEmployee(id)
         ' Add the NorthwindEmployee object to the collection.
         al.Add(nwe)
      Next
   Finally
      ' If anything strange happens, clean up.
      sds.Dispose()
   End Try

   Return al
End Function 'GetAllEmployees

注解

由于不同的数据库产品使用不同的 SQL 品种,因此 的 selectCommand 语法取决于当前使用的 ADO.NET 提供程序,该提供程序由 ProviderName 属性标识。 如果 SQL 字符串是一个参数化查询或命令,则参数的占位符还取决于所使用的 ADO.NET 提供程序。 例如,如果提供程序是 System.Data.SqlClient,这是 类的默认提供程序 SqlDataSource ,则 参数的占位符为 '@parameterName'。 但是,如果提供程序设置为 System.Data.OdbcSystem.Data.OleDb,则参数的占位符为 '?'。 有关参数化 SQL 查询和命令的详细信息,请参阅 在 SqlDataSource 控件中使用参数

如果数据源支持存储过程,该值 SelectCommand 可以是 SQL 字符串或存储过程的名称。

另请参阅

适用于

SqlDataSource(String, String, String)

使用指定的连接字符串和 Select 命令初始化 SqlDataSource 类的新实例。

public:
 SqlDataSource(System::String ^ providerName, System::String ^ connectionString, System::String ^ selectCommand);
public SqlDataSource (string providerName, string connectionString, string selectCommand);
new System.Web.UI.WebControls.SqlDataSource : string * string * string -> System.Web.UI.WebControls.SqlDataSource
Public Sub New (providerName As String, connectionString As String, selectCommand As String)

参数

providerName
String

SqlDataSource 使用的数据提供程序的名称。 如果没有设置任何提供程序,则在默认情况下,SqlDataSource 使用 Microsoft SQL Server 的 ADO.NET 提供程序。

connectionString
String

用于与基础数据库建立连接的连接字符串。

selectCommand
String

用于从基础数据库中检索数据的 SQL 查询。 如果该 SQL 查询是参数化的 SQL 字符串,可能需要将 Parameter 对象添加到 SelectParameters 集合中。

注解

由于不同的数据库产品使用不同的 SQL 品种,因此 的 selectCommand 语法取决于当前使用的 ADO.NET 提供程序,该提供程序由 providerName 参数标识。 如果 SQL 字符串是一个参数化查询或命令,则参数的占位符还取决于所使用的 ADO.NET 提供程序。 例如,如果提供程序为 System.Data.SqlClient,这是 类的默认提供程序 SqlDataSource ,则 参数的占位符为 '@parameterName'。 但是,如果提供程序设置为 System.Data.OdbcSystem.Data.OleDb,则参数的占位符为 '?'。 有关参数化 SQL 查询和命令的详细信息,请参阅 在 SqlDataSource 控件中使用参数

如果数据源支持存储过程,则 SelectCommand 属性可以是 SQL 字符串或存储过程的名称。

另请参阅

适用于