SqlDataSource.ProviderName プロパティ

定義

SqlDataSource コントロールが基になるデータ ソースに接続するために使用する .NET Framework データ プロバイダーの名前を取得または設定します。

public:
 virtual property System::String ^ ProviderName { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.DataProviderNameConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public virtual string ProviderName { get; set; }
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.DataProviderNameConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public virtual string ProviderName { get; set; }
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.DataProviderNameConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.ProviderName : string with get, set
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.DataProviderNameConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.ProviderName : string with get, set
Public Overridable Property ProviderName As String

プロパティ値

SqlDataSource が使用するデータ プロバイダーの名前。それ以外の場合、プロバイダーが設定されていないときは、Microsoft SQL Server の ADO.NET プロバイダー。 既定値は、Microsoft SQL Server の ADO.NET プロバイダーです。

属性

このセクションには、2 つのコード例が含まれています。 最初のコードでは、System.Data.SqlClientコントロールの既定の .NET Framework Data Provider for SQL Server を使用して、SQL Server データベースに接続する方法をSqlDataSource示します。 2 番目のコード例では、.NET Framework Data Provider for ODBC を使用して ODBC データベースに接続する方法を示しますSystem.Data.Odbc

次のコード例では、コントロールの既定のデータ プロバイダー である を使用して、SQL Server データベースに接続する方法をSqlDataSourceSystem.Data.SqlClient示します。 プロパティが ProviderName 明示的に設定されていない場合は常に、既定のプロバイダーが使用されます。 プロパティは ConnectionString プロバイダー固有です。

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:SqlDataSource
          id="SqlDataSource1"
          runat="server"
          DataSourceMode="DataReader"
          ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
          SelectCommand="SELECT LastName FROM Employees">
      </asp:SqlDataSource>

      <asp:ListBox
          id="ListBox1"
          runat="server"
          DataTextField="LastName"
          DataSourceID="SqlDataSource1">
      </asp:ListBox>

    </form>
  </body>
</html>
<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:SqlDataSource
          id="SqlDataSource1"
          runat="server"
          DataSourceMode="DataReader"
          ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
          SelectCommand="SELECT LastName FROM Employees">
      </asp:SqlDataSource>

      <asp:ListBox
          id="ListBox1"
          runat="server"
          DataTextField="LastName"
          DataSourceID="SqlDataSource1">
      </asp:ListBox>

    </form>
  </body>
</html>

次のコード例は、上記のコード例と機能的には同じですが、.NET Framework Data Provider for ODBC を使用して ODBC データベースに接続する方法をSystem.Data.Odbc示しています。 プロパティは ConnectionString 、ODBC データベースへの接続に使用される ODBC データ ソース名 (DSN) の名前に設定されます。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <!-- This example uses a Northwind database that is hosted by an ODBC-compliant
         database. To run this sample, create an ODBC DSN to any database that hosts
         the Northwind database, including Microsoft SQL Server or Microsoft Access,
         change the name of the DSN in the ConnectionString, and view the page.
    -->
    <form id="form1" runat="server">
      <asp:SqlDataSource
          id="SqlDataSource1"
          runat="server"
          ProviderName="System.Data.Odbc"
          ConnectionString="dsn=myodbc3dsn;"
          SelectCommand="SELECT LastName FROM Employees;">
      </asp:SqlDataSource>

      <asp:ListBox
          id="ListBox1"
          runat="server"
          DataSourceID="SqlDataSource1"
          DataTextField="LastName">
      </asp:ListBox>

    </form>
  </body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <!-- This example uses a Northwind database that is hosted by an ODBC-compliant
         database. To run this sample, create an ODBC DSN to any database that hosts
         the Northwind database, including Microsoft SQL Server or Microsoft Access,
         change the name of the DSN in the ConnectionString, and view the page.
    -->
    <form id="form1" runat="server">
      <asp:SqlDataSource
          id="SqlDataSource1"
          runat="server"
          ProviderName="System.Data.Odbc"
          ConnectionString="dsn=myodbc3-test;"
          SelectCommand="SELECT LastName FROM Employees;">
      </asp:SqlDataSource>

      <asp:ListBox
          id="ListBox1"
          runat="server"
          DataSourceID="SqlDataSource1"
          DataTextField="LastName">
      </asp:ListBox>

    </form>
  </body>
</html>

注釈

.NET Frameworkには、次のデータ プロバイダーが含まれています。

  • プロバイダーはSystem.Data.SqlClient、SQL Serverの既定の.NET Framework データ プロバイダーです。

  • プロバイダーはSystem.Data.OleDb、.NET Framework Data Provider for OLE DB です。

  • プロバイダーはSystem.Data.Odbc、.NET Framework Data Provider for ODBC です。

  • プロバイダーはSystem.Data.OracleClient、.NET Framework Data Provider for Oracle です。

プロパティが ProviderName 、 などの MSDAORAアンマネージ ADO.NET プロバイダーの名前に設定されることはありません。 詳細については、「 SqlDataSource コントロールを使用したデータの選択」を参照してください。

プロパティを ProviderName 変更すると、 DataSourceChanged イベントが発生し、 に SqlDataSource バインドされているコントロールが再バインドされます。

使用可能なプロバイダーの一覧は、Machine.config ファイルの system.data セクションのサブセクションで指定しますDbProviderFactories

適用対象

こちらもご覧ください