<?xml version="1.0" encoding="utf-8"?>
<Type Name="SqlConnection" FullName="System.Data.SqlClient.SqlConnection">
  <TypeSignature Language="C#" Maintainer="auto" Value="public sealed class SqlConnection : System.Data.Common.DbConnection, ICloneable" />
  <AssemblyInfo>
    <AssemblyName>System.Data</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>1.0.3300.0</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Data.Common.DbConnection</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.ICloneable</InterfaceName>
    </Interface>
  </Interfaces>
  <Attributes>
    <Attribute>
      <AttributeName>System.ComponentModel.DefaultEvent("InfoMessage")</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>A <see cref="T:System.Data.SqlClient.SqlConnection" /> object represents a unique session to a ssNoVersion data source. With a client/server database system, it is equivalent to a network connection to the server. <see cref="T:System.Data.SqlClient.SqlConnection" /> is used together with <see cref="T:System.Data.SqlClient.SqlDataAdapter" /> and <see cref="T:System.Data.SqlClient.SqlCommand" /> to increase performance when connecting to a Microsoft ssNoVersion database. For all third-party ssNoVersion products, and other OLE DB-supported data sources, use <see cref="T:System.Data.OleDb.OleDbConnection" />.</para>
      <para>When you create an instance of <see cref="T:System.Data.SqlClient.SqlConnection" />, all properties are set to their initial values. For a list of these values, see the <see cref="T:System.Data.SqlClient.SqlConnection" /> constructor.</para>
      <para>See <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> for a list of the keywords in a connection string.</para>
      <para>If the <see cref="T:System.Data.SqlClient.SqlConnection" /> goes out of scope, it won't be closed. Therefore, you must explicitly close the connection by calling Close or Dispose. Close and Dispose are functionally equivalent. If the connection pooling value Pooling is set to true or yes, the underlying connection is returned back to the connection pool. On the other hand, if Pooling is set to false or no, the underlying connection to the server is actually closed.</para>
      <block subset="none" type="note">
        <para>Login and logout events will not be raised on the server when a connection is fetched from or returned to the connection pool, because the connection is not actually closed when it is returned to the connection pool. For more information, see <format type="text/html"><a href="7e51d44e-7c4e-4040-9332-f0190fe36f07">SQL Server Connection Pooling (ADO.NET)</a></format>.</para>
      </block>
      <para>To ensure that connections are always closed, open the connection inside of a using block, as shown in the following code fragment. Doing so ensures that the connection is automatically closed when the code exits the block. </para>
      <code>Using connection As New SqlConnection(connectionString)
    connection.Open()
    ' Do work here; connection closed on following line.
End Using
</code>
      <code>using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();
        // Do work here; connection closed on following line.
    }</code>
      <block subset="none" type="note">
        <para>To deploy high-performance applications, you must use connection pooling. When you use the dnprdnshort Data Provider for ssNoVersion, you do not have to enable connection pooling because the provider manages this automatically, although you can modify some settings. For more information, see <format type="text/html"><a href="7e51d44e-7c4e-4040-9332-f0190fe36f07">SQL Server Connection Pooling (ADO.NET)</a></format>.</para>
      </block>
      <para>If a <see cref="T:System.Data.SqlClient.SqlException" /> is generated by the method executing a <see cref="T:System.Data.SqlClient.SqlCommand" />, the <see cref="T:System.Data.SqlClient.SqlConnection" /> remains open when the severity level is 19 or less. When the severity level is 20 or greater, the server ordinarily closes the <see cref="T:System.Data.SqlClient.SqlConnection" />. However, the user can reopen the connection and continue.</para>
      <para>An application that creates an instance of the <see cref="T:System.Data.SqlClient.SqlConnection" /> object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. <see cref="T:System.Data.SqlClient.SqlConnection" /> makes security demands using the <see cref="T:System.Data.SqlClient.SqlClientPermission" /> object. Users can verify that their code has sufficient permissions by using the <see cref="T:System.Data.SqlClient.SqlClientPermissionAttribute" /> object. Users and administrators can also use the <format type="text/html"><a href="d2bf6123-7b0c-4e60-87ad-a39a1c3eb2e0">Code Access Security Policy Tool (Caspol.exe)</a></format> to modify security policy at the machine, user, and enterprise levels. For more information, see <format type="text/html"><a href="9a9621d7-8883-4a4f-a874-65e8e09e20a6">Security in the .NET Framework</a></format>. For an example demonstrating how to use security demands, see <format type="text/html"><a href="93e099eb-daa1-4f1e-b031-c1e10a996f88">Code Access Security and ADO.NET</a></format>.</para>
      <para>For more information about handling warning and informational messages from the server, see <format type="text/html"><a href="5a29de74-acfc-4134-8616-829dd7ce0710">Working with Connection Events</a></format>. ssNoVersion engine errors and error messages are documented in ssNoVersion Books Online.</para>
      <block subset="none" type="note">
        <para>You can force TCP instead of shared memory. You can do that by prefixing tcp: to the server name in the connection string or you can use localhost.</para>
      </block>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Represents an open connection to a ssNoVersion database. This class cannot be inherited.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public SqlConnection ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When a new instance of <see cref="T:System.Data.SqlClient.SqlConnection" /> is created, the read/write properties are set to the following initial values unless they are specifically set using their associated keywords in the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property.</para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Properties </para>
                </term>
                <description>
                  <para>Initial value </para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> </para>
              </term>
              <description>
                <para>empty string ("") </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionTimeout" /> </para>
              </term>
              <description>
                <para>15 </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.Database" /> </para>
              </term>
              <description>
                <para>empty string ("") </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.DataSource" /> </para>
              </term>
              <description>
                <para>empty string ("") </para>
              </description>
            </item>
          </list>
          <para>You can change the value for these properties only by using the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property. The <see cref="T:System.Data.SqlClient.SqlConnectionStringBuilder" /> class provides functionality for creating and managing the contents of connection strings.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Data.SqlClient.SqlConnection" /> class.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public SqlConnection (string connectionString);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="connectionString" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When a new instance of <see cref="T:System.Data.SqlClient.SqlConnection" /> is created, the read/write properties are set to the following initial values unless they are specifically set using their associated keywords in the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property. </para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Properties </para>
                </term>
                <description>
                  <para>Initial value </para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> </para>
              </term>
              <description>
                <para>
                  <paramref name="connectionString" /> </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionTimeout" /> </para>
              </term>
              <description>
                <para>15 </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.Database" /> </para>
              </term>
              <description>
                <para>empty string ("") </para>
              </description>
            </item>
            <item>
              <term>
                <para>
                  <see cref="P:System.Data.SqlClient.SqlConnection.DataSource" /> </para>
              </term>
              <description>
                <para>empty string ("") </para>
              </description>
            </item>
          </list>
          <para>You can change the value for these properties only by using the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property. The <see cref="T:System.Data.SqlClient.SqlConnection" /> class provides functionality for creating and managing the contents of connection strings.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Data.SqlClient.SqlConnection" /> class when given a string that contains the connection string.</para>
        </summary>
        <param name="connectionString">
          <attribution license="cc4" from="Microsoft" modified="false" />The connection used to open the ssNoVersion database.</param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="BeginDbTransaction">
      <MemberSignature Language="C#" Value="protected override System.Data.Common.DbTransaction BeginDbTransaction (System.Data.IsolationLevel isolationLevel);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.Common.DbTransaction</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="isolationLevel" Type="System.Data.IsolationLevel" />
      </Parameters>
      <Docs>
        <param name="isolationLevel">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="BeginTransaction">
      <MemberSignature Language="C#" Value="public System.Data.SqlClient.SqlTransaction BeginTransaction ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlTransaction</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This command maps to the ssNoVersion implementation of BEGIN TRANSACTION.</para>
          <para>You must explicitly commit or roll back the transaction using the <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" /> or <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> method. To make sure that the dnprdnshort Data Provider for ssNoVersion transaction management model performs correctly, avoid using other transaction management models, such as the one provided by ssNoVersion.</para>
          <block subset="none" type="note">
            <para>If you do not specify an isolation level, the default isolation level is used. To specify an isolation level with the <see cref="Overload:System.Data.SqlClient.SqlConnection.BeginTransaction" /> method, use the overload that takes the <paramref name="iso" /> parameter (<see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction(System.Data.IsolationLevel)" />). The isolation level set for a transaction persists after the transaction is completed and until the connection is closed or disposed. Setting the isolation level to Snapshot in a database where the snapshot isolation level is not enabled does not throw an exception. The transaction will complete using the default isolation level.</para>
          </block>
          <block subset="none" type="note">
            <para>If a transaction is started and a level 16 or higher error occurs on the server, the transaction will not be rolled back until the <see cref="M:System.Data.SqlClient.SqlDataReader.Read" /> method is invoked. No exception is thrown on ExecuteReader.</para>
          </block>
          <block subset="none" type="note">
            <para>When your query returns a large amount of data and calls BeginTransaction, a <see cref="T:System.Data.SqlClient.SqlException" /> is thrown because ssNoVersion does not allow parallel transactions when using MARS. To avoid this problem, always associate a transaction with the command, the connection, or both before any readers are open.</para>
          </block>
          <para>For more information on ssNoVersion transactions, see "Explicit Transactions" and "Coding Efficient Transactions" in ssNoVersion Books Online.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Starts a database transaction.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object representing the new transaction.</para>
        </returns>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="BeginTransaction">
      <MemberSignature Language="C#" Value="public System.Data.SqlClient.SqlTransaction BeginTransaction (System.Data.IsolationLevel iso);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlTransaction</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iso" Type="System.Data.IsolationLevel" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This command maps to the ssNoVersion implementation of BEGIN TRANSACTION.</para>
          <para>You must explicitly commit or roll back the transaction using the <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" /> or <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> method. To make sure that the dnprdnshort Data Provider for ssNoVersion transaction management model performs correctly, avoid using other transaction management models, such as the one provided by ssNoVersion.</para>
          <block subset="none" type="note">
            <para>After a transaction is committed or rolled back, the isolation level of the transaction persists for all subsequent commands that are in autocommit mode (the ssNoVersion default). This can produce unexpected results, such as an isolation level of REPEATABLE READ persisting and locking other users out of a row. To reset the isolation level to the default (READ COMMITTED), execute the tsql SET TRANSACTION ISOLATION LEVEL READ COMMITTED statement, or call <see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction" /> followed immediately by <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" />. For more information on ssNoVersion isolation levels, see "Isolation Levels in the Database Engine" in ssNoVersion Books Online.</para>
          </block>
          <para>For more information on ssNoVersion transactions, see "Explicit Transactions" and "Coding Efficient Transactions" in ssNoVersion Books Online.</para>
          <block subset="none" type="note">
            <para>When your query returns a large amount of data and calls BeginTransaction, a <see cref="T:System.Data.SqlClient.SqlException" /> is thrown because ssNoVersion does not allow parallel transactions when using MARS. To avoid this problem, always associate a transaction with the command, the connection, or both before any readers are open.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Starts a database transaction with the specified isolation level.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object representing the new transaction.</para>
        </returns>
        <param name="iso">
          <attribution license="cc4" from="Microsoft" modified="false" />The isolation level under which the transaction should run. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="BeginTransaction">
      <MemberSignature Language="C#" Value="public System.Data.SqlClient.SqlTransaction BeginTransaction (string transactionName);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlTransaction</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="transactionName" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This command maps to the ssNoVersion implementation of BEGIN TRANSACTION.</para>
          <para>The length of the <paramref name="transactionName" /> parameter must not exceed 32 characters; otherwise an exception will be thrown.</para>
          <para>The value in the <paramref name="transactionName" /> parameter can be used in later calls to <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> and in the <paramref name="savePoint" /> parameter of the <see cref="M:System.Data.SqlClient.SqlTransaction.Save(System.String)" /> method.</para>
          <para>You must explicitly commit or roll back the transaction using the <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" /> or <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> method. To make sure that the dnprdnshort Data Provider for ssNoVersion transaction management model performs correctly, avoid using other transaction management models, such as the one provided by ssNoVersion.</para>
          <para>For more information on ssNoVersion transactions, see "Explicit Transactions" and "Coding Efficient Transactions" in ssNoVersion Books Online.</para>
          <block subset="none" type="note">
            <para>When your query returns a large amount of data and calls BeginTransaction, a <see cref="T:System.Data.SqlClient.SqlException" /> is thrown because ssNoVersion does not allow parallel transactions when using MARS. To avoid this problem, always associate a transaction with the command, the connection, or both before any readers are open.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Starts a database transaction with the specified transaction name.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object representing the new transaction.</para>
        </returns>
        <param name="transactionName">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the transaction. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="BeginTransaction">
      <MemberSignature Language="C#" Value="public System.Data.SqlClient.SqlTransaction BeginTransaction (System.Data.IsolationLevel iso, string transactionName);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlTransaction</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iso" Type="System.Data.IsolationLevel" />
        <Parameter Name="transactionName" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This command maps to the ssNoVersion implementation of BEGIN TRANSACTION.</para>
          <para>The value in the <paramref name="transactionName" /> parameter can be used in later calls to <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> and in the <paramref name="savePoint" /> parameter of the <see cref="M:System.Data.SqlClient.SqlTransaction.Save(System.String)" /> method.</para>
          <para>You must explicitly commit or roll back the transaction using the <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" /> or <see cref="M:System.Data.SqlClient.SqlTransaction.Rollback" /> method. To make sure that the ssNoVersion transaction management model performs correctly, avoid using other transaction management models, such as the one provided by ssNoVersion.</para>
          <block subset="none" type="note">
            <para>After a transaction is committed or rolled back, the isolation level of the transaction persists for all subsequent commands that are in autocommit mode (the ssNoVersion default). This can produce unexpected results, such as an isolation level of REPEATABLE READ persisting and locking other users out of a row. To reset the isolation level to the default (READ COMMITTED), execute the tsql SET TRANSACTION ISOLATION LEVEL READ COMMITTED statement, or call <see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction" /> followed immediately by <see cref="M:System.Data.SqlClient.SqlTransaction.Commit" />. For more information on ssNoVersion isolation levels, see "Isolation Levels in the Database Engine" in ssNoVersion Books Online.</para>
          </block>
          <para>For more information on ssNoVersion transactions, see "Explicit Transactions" and "Coding Efficient Transactions" in ssNoVersion Books Online.</para>
          <block subset="none" type="note">
            <para>When your query returns a large amount of data and calls BeginTransaction, a <see cref="T:System.Data.SqlClient.SqlException" /> is thrown because ssNoVersion does not allow parallel transactions when using MARS. To avoid this problem, always associate a transaction with the command, the connection, or both before any readers are open.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Starts a database transaction with the specified isolation level and transaction name.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object representing the new transaction.</para>
        </returns>
        <param name="iso">
          <attribution license="cc4" from="Microsoft" modified="false" />The isolation level under which the transaction should run. </param>
        <param name="transactionName">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the transaction. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ChangeDatabase">
      <MemberSignature Language="C#" Value="public override void ChangeDatabase (string database);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="database" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The value supplied in the <paramref name="database" /> parameter must be a valid database name. The <paramref name="database" /> parameter cannot contain a null value, an empty string, or a string with only blank characters.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Changes the current database for an open <see cref="T:System.Data.SqlClient.SqlConnection" />.</para>
        </summary>
        <param name="database">
          <attribution license="cc4" from="Microsoft" modified="false" />The name of the database to use instead of the current database. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ChangePassword">
      <MemberSignature Language="C#" Value="public static void ChangePassword (string connectionString, string newPassword);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="connectionString" Type="System.String" />
        <Parameter Name="newPassword" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When you are using ssNoVersion on Windows Server, developers can take advantage of functionality that lets the client application supply both the current and a new password in order to change the existing password. Applications can implement functionality such as prompting the user for a new password during initial login if the old one has expired, and this operation can be completed without administrator intervention.</para>
          <para>The <see cref="M:System.Data.SqlClient.SqlConnection.ChangePassword(System.String,System.String)" /> method changes the ssNoVersion password for the user indicated in the supplied <paramref name="connectionString" /> parameter to the value supplied in the <paramref name="newPassword" /> parameter. If the connection string includes the option for integrated security (that is, "Integrated Security=True" or the equivalent), an exception is thrown.</para>
          <para>To determine that the password has expired, calling the <see cref="M:System.Data.SqlClient.SqlConnection.Open" /> method raises a <see cref="T:System.Data.SqlClient.SqlException" />. In order to indicate that the password that is contained within the connection string must be reset, the <see cref="P:System.Data.SqlClient.SqlException.Number" /> property for the exception contains the status value 18487 or 18488. The first value (18487) indicates that the password has expired and the second (18488) indicates that the password must be reset before logging in.</para>
          <para>This method opens its own connection to the server, requests the password change, and closes the connection as soon as it has completed. This connection is not retrieved from, nor returned to, the ssNoVersion connection pool.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Changes the ssNoVersion password for the user indicated in the connection string to the supplied new password.</para>
        </summary>
        <param name="connectionString">
          <attribution license="cc4" from="Microsoft" modified="false" />The connection string that contains enough information to connect to the server that you want. The connection string must contain the user ID and the current password.</param>
        <param name="newPassword">
          <attribution license="cc4" from="Microsoft" modified="false" />The new password to set. This password must comply with any password security policy set on the server, including minimum length, requirements for specific characters, and so on.</param>
      </Docs>
    </Member>
    <Member MemberName="ClearAllPools">
      <MemberSignature Language="C#" Value="public static void ClearAllPools ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="M:System.Data.SqlClient.SqlConnection.ClearAllPools" /> resets (or empties) the connection pool. If there are connections in use at the time of the call, they are marked appropriately and will be discarded (instead of being returned to the pool) when <see cref="M:System.Data.SqlClient.SqlConnection.Close" /> is called on them.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Empties the connection pool.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="ClearPool">
      <MemberSignature Language="C#" Value="public static void ClearPool (System.Data.SqlClient.SqlConnection connection);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="connection" Type="System.Data.SqlClient.SqlConnection" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="M:System.Data.SqlClient.SqlConnection.ClearPool(System.Data.SqlClient.SqlConnection)" /> clears the connection pool that is associated with the <paramref name="connection" />. If additional connections associated with <paramref name="connection" /> are in use at the time of the call, they are marked appropriately and are discarded (instead of being returned to the pool) when <see cref="M:System.Data.SqlClient.SqlConnection.Close" /> is called on them. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Empties the connection pool associated with the specified connection.</para>
        </summary>
        <param name="connection">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Data.SqlClient.SqlConnection" /> to be cleared from the pool.</param>
      </Docs>
    </Member>
    <Member MemberName="Close">
      <MemberSignature Language="C#" Value="public override void Close ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Data.SqlClient.SqlConnection.Close" /> method rolls back any pending transactions. It then releases the connection to the connection pool, or closes the connection if connection pooling is disabled.</para>
          <block subset="none" type="note">
            <para>Pending transactions started using tsql or <see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction" /> are automatically rolled back when the connection is reset if connection pooling is enabled. If connection pooling is off, the transaction is rolled back after SqlConnection.Close is called. Transactions started through <see cref="N:System.Transactions" /> are controlled through the System.Transactions infrastructure, and are not affected by SqlConnection.Close.</para>
          </block>
          <para>An application can call <see cref="M:System.Data.SqlClient.SqlConnection.Close" /> more than one time. No exception is generated.</para>
          <para>If the <see cref="T:System.Data.SqlClient.SqlConnection" /> goes out of scope, it won't be closed. Therefore, you must explicitly close the connection by calling Close or Dispose. Close and Dispose are functionally equivalent. If the connection pooling value Pooling is set to true or yes, the underlying connection is returned back to the connection pool. On the other hand, if Pooling is set to false or no, the underlying connection to the server is closed.</para>
          <block subset="none" type="note">
            <para>Login and logout events will not be raised on the server when a connection is fetched from or returned to the connection pool, because the connection is not actually closed when it is returned to the connection pool. For more information, see <format type="text/html"><a href="7e51d44e-7c4e-4040-9332-f0190fe36f07">SQL Server Connection Pooling (ADO.NET)</a></format>.</para>
          </block>
          <block subset="none" type="note">
            <para>Do not call Close or Dispose on a Connection, a DataReader, or any other managed object in the Finalize method of your class. In a finalizer, you should only release unmanaged resources that your class owns directly. If your class does not own any unmanaged resources, do not include a Finalize method in your class definition. For more information, see <format type="text/html"><a href="22B6CB97-0C80-4EEB-A2CF-5ED7655E37F9">Garbage Collection</a></format>.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Closes the connection to the database. This is the preferred method of closing any open connection.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ConnectionString">
      <MemberSignature Language="C#" Value="public override string ConnectionString { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <value>The current connection string.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> is similar to an OLE DB connection string, but is not identical. Unlike OLE DB or ADO, the connection string that is returned is the same as the user-set <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />, minus security information if the Persist Security Info value is set to false (default). The dnprdnshort Data Provider for ssNoVersion does not persist or return the password in a connection string unless you set Persist Security Info to true.</para>
          <para>You can use the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property to connect to a database. The following example illustrates a typical connection string.</para>
          <code>"Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)"</code>
          <para>Use the new <see cref="T:System.Data.SqlClient.SqlConnectionStringBuilder" /> to construct valid connection strings at run time. For more information, see <format type="text/html"><a href="8434b608-c4d3-43d3-8ae3-6d8c6b726759">Building Connection Strings</a></format>.</para>
          <para>The <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> property can be set only when the connection is closed. Many of the connection string values have corresponding read-only properties. When the connection string is set, these properties are updated, except when an error is detected. In this case, none of the properties are updated. <see cref="T:System.Data.SqlClient.SqlConnection" /> properties return only those settings that are contained in the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />.</para>
          <para>To connect to a local computer, specify "(local)" for the server. If a server name is not specified, a connection will be attempted to the default instance on the local computer.</para>
          <para>Resetting the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> on a closed connection resets all connection string values (and related properties) including the password. For example, if you set a connection string that includes "Database= AdventureWorks", and then reset the connection string to "Data Source=myserver;Integrated Security=true", the <see cref="P:System.Data.SqlClient.SqlConnection.Database" /> property is no longer set to "AdventureWorks".</para>
          <para>The connection string is parsed immediately after being set. If errors in syntax are found when parsing, a runtime exception, such as <see cref="T:System.ArgumentException" />, is generated. Other errors can be found only when an attempt is made to open the connection.</para>
          <para>The basic format of a connection string includes a series of keyword/value pairs separated by semicolons. The equal sign (=) connects each keyword and its value. To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotation marks. If the value contains both a semicolon and a double-quote character, the value can be enclosed in single quotation marks. The single quotation mark is also useful if the value starts with a double-quote character. Conversely, the double quotation mark can be used if the value starts with a single quotation mark. If the value contains both single-quote and double-quote characters, the quotation mark character used to enclose the value must be doubled every time it occurs within the value.</para>
          <para>To include preceding or trailing spaces in the string value, the value must be enclosed in either single quotation marks or double quotation marks. Any leading or trailing spaces around integer, Boolean, or enumerated values are ignored, even if enclosed in quotation marks. However, spaces within a string literal keyword or value are preserved. Single or double quotation marks may be used within a connection string without using delimiters (for example, Data Source= my'Server or Data Source= my"Server), unless a quotation mark character is the first or last character in the value.</para>
          <para>Keywords are not case sensitive.</para>
          <para>The following table lists the valid names for keyword values within the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />.</para>
          <list type="table">
            <listheader>
              <item>
                <term>
                  <para>Keyword </para>
                </term>
                <description>
                  <para>Default</para>
                </description>
                <description>
                  <para>Description </para>
                </description>
              </item>
            </listheader>
            <item>
              <term>
                <para>Addr</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>Synonym of Data Source.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Address</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>Synonym of Data Source.</para>
              </description>
            </item>
            <item>
              <term>
                <para>App</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>Synonym of Application Name.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Application Name </para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The name of the application, or '.NET SQLClient Data Provider' if no application name is provided. </para>
                <para>An application name can be 128 characters or less.</para>
              </description>
            </item>
            <item>
              <term>
                <para>ApplicationIntent</para>
              </term>
              <description>
                <para>ReadWrite</para>
              </description>
              <description>
                <para>Declares the application workload type when connecting to a server. Possible values are ReadOnly and ReadWrite. For example:</para>
                <code>ApplicationIntent=ReadOnly</code>
                <para>For more information about SqlClient support for Always On Availability Groups, see <format type="text/html"><a href="61e0b396-09d7-4e13-9711-7dcbcbd103a0">SqlClient Support for High Availability, Disaster Recovery</a></format>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Asynchronous Processing </para>
                <para>-or- </para>
                <para>Async </para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>When true, enables asynchronous operation support. Recognized values are true, false, yes, and no.</para>
                <para>This property is ignored beginning in net_v45. For more information about SqlClient support for asynchronous programming, see <format type="text/html"><a href="85da7447-7125-426e-aa5f-438a290d1f77">Asynchronous Programming</a></format>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>AttachDBFilename </para>
                <para>-or- </para>
                <para>Extended Properties </para>
                <para>-or- </para>
                <para>Initial File Name </para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The name of the primary database file, including the full path name of an attachable database. AttachDBFilename is only supported for primary data files with an .mdf extension.</para>
                <para>If the value of the AttachDBFileName key is specified in the connection string, the database is attached and becomes the default database for the connection.</para>
                <para>If this key is not specified and if the database was previously attached, the database will not be reattached. The previously attached database will be used as the default database for the connection.</para>
                <para>If this key is specified together with the AttachDBFileName key, the value of this key will be used as the alias. However, if the name is already used in another attached database, the connection will fail.</para>
                <para>The path may be absolute or relative by using the DataDirectory substitution string. If DataDirectory is used, the database file must exist within a subdirectory of the directory pointed to by the substitution string.</para>
                <block subset="none" type="note">
                  <para>Remote server, HTTP, and UNC path names are not supported.</para>
                </block>
                <para>The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:</para>
                <para>"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"</para>
                <para>An error will be generated if a log file exists in the same directory as the data file and the 'database' keyword is used when attaching the primary data file. In this case, remove the log file. Once the database is attached, a new log file will be automatically generated based on the physical path.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Connect Timeout </para>
                <para>-or- </para>
                <para>Connection Timeout </para>
                <para>-or- </para>
                <para>Timeout</para>
              </term>
              <description>
                <para>15 </para>
              </description>
              <description>
                <para>The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.</para>
                <para>Valid values are greater than or equal to 0 and less than or equal to 2147483647.</para>
                <para>When opening a connection to a Azure SQL Database, set the connection timeout to 30 seconds.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Connection Lifetime</para>
                <para>-or- </para>
                <para>Load Balance Timeout</para>
              </term>
              <description>
                <para>0</para>
              </description>
              <description>
                <para>When a connection is returned to the pool, its creation time is compared with the current time, and the connection is destroyed if that time span (in seconds) exceeds the value specified by Connection Lifetime. This is useful in clustered configurations to force load balancing between a running server and a server just brought online.</para>
                <para>A value of zero (0) causes pooled connections to have the maximum connection timeout.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Context Connection</para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>true if an in-process connection to ssNoVersion should be made.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Current Language </para>
                <para>-or- </para>
                <para>Language</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>Sets the language used for database server warning or error messages.</para>
                <para>The language name can be 128 characters or less.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Data Source </para>
                <para>-or- </para>
                <para>Server </para>
                <para>-or- </para>
                <para>Address </para>
                <para>-or- </para>
                <para>Addr </para>
                <para>-or- </para>
                <para>Network Address </para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The name or network address of the instance of ssNoVersion to which to connect. The port number can be specified after the server name:</para>
                <para>server=tcp:servername, portnumber</para>
                <para>When specifying a local instance, always use (local). To force a protocol, add one of the following prefixes:</para>
                <para>np:(local),  tcp:(local), lpc:(local)</para>
                <para>Beginning in net_v45, you can also connect to a LocalDB database as follows:</para>
                <code>server=(localdb)\\myInstance</code>
                <para>For more information about LocalDB, see <format type="text/html"><a href="cf796898-5575-46f2-ae6e-21e5aa8c4123">SqlClient Support for LocalDB</a></format>.</para>
                <para>Data Source must use the TCP format or the Named Pipes format.</para>
                <para>TCP format is as follows:</para>
                <list type="bullet">
                  <item>
                    <para>tcp:&lt;host name&gt;\&lt;instance name&gt;</para>
                  </item>
                  <item>
                    <para>tcp:&lt;host name&gt;,&lt;TCP/IP port number&gt;</para>
                  </item>
                </list>
                <para>The TCP format must start with the prefix "tcp:" and is followed by the database instance, as specified by a host name and an instance name.</para>
                <para>The host name MUST be specified in one of the following ways:</para>
                <list type="bullet">
                  <item>
                    <para>NetBIOSName</para>
                  </item>
                  <item>
                    <para>IPv4Address</para>
                  </item>
                  <item>
                    <para>IPv6Address</para>
                  </item>
                </list>
                <para>The instance name is used to resolve to a particular TCP/IP port number on which a database instance is hosted. Alternatively, specifying a TCP/IP port number directly is also allowed. If both instance name and port number are not present, the default database instance is used.</para>
                <para>The Named Pipes format is as follows:</para>
                <list type="bullet">
                  <item>
                    <para>np:\\&lt;host name&gt;\pipe\&lt;pipe name&gt;</para>
                  </item>
                </list>
                <para>The Named Pipes format MUST start with the prefix "np:" and is followed by a named pipe name.</para>
                <para>The host name MUST be specified in one of the following ways:</para>
                <list type="bullet">
                  <item>
                    <para>NetBIOSName</para>
                  </item>
                  <item>
                    <para>IPv4Address</para>
                  </item>
                  <item>
                    <para>IPv6Address</para>
                  </item>
                </list>
                <para>The pipe name is used to identify the database instance to which the .NET Framework application will be connected.</para>
                <para>If the value of the Network key is specified, the prefixes "tcp:" and "np:" should not be specified. </para>
                <block subset="none" type="note">
                  <para>You can force the use of TCP instead of shared memory, either by prefixing <userInputLocalizable>tcp:</userInputLocalizable> to the server name in the connection string, or by using <userInputLocalizable>localhost</userInputLocalizable>.</para>
                </block>
              </description>
            </item>
            <item>
              <term>
                <para>Encrypt</para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>When true, ssNoVersion uses SSL encryption for all data sent between the client and server if the server has a certificate installed. Recognized values are true, false, yes, and no. For more information, see <format type="text/html"><a href="0977aeee-04d1-4cce-bbed-750c77fce06e">Connection String Syntax (ADO.NET)</a></format>.</para>
                <para>Beginning in net_v45, when TrustServerCertificate is false and Encrypt is true, the server name (or IP address) in a ssNoVersion SSL certificate must exactly match the server name (or IP address) specified in the connection string. Otherwise, the connection attempt will fail. For information about support for certificates whose subject starts with a wildcard character (*), see <see cref="http://support.microsoft.com/kb/258858">Accepted wildcards used by server certificates for server authentication</see>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Enlist</para>
              </term>
              <description>
                <para>'true'</para>
              </description>
              <description>
                <para>true indicates that the ssNoVersion connection pooler automatically enlists the connection in the creation thread's current transaction context.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Failover Partner</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The name of the failover partner server where database mirroring is configured.</para>
                <para>If the value of this key is "", then Initial Catalog must be present, and its value must not be "".</para>
                <para>The server name can be 128 characters or less.</para>
                <para>If you specify a failover partner but the failover partner server is not configured for database mirroring and the primary server (specified with the Server keyword) is not available, then the connection will fail. </para>
                <para>If you specify a failover partner and the primary server is not configured for database mirroring, the connection to the primary server (specified with the Server keyword) will succeed if the primary server is available.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Initial Catalog </para>
                <para>-or- </para>
                <para>Database </para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The name of the database. </para>
                <para>The database name can be 128 characters or less.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Integrated Security </para>
                <para>-or- </para>
                <para>Trusted_Connection </para>
              </term>
              <description>
                <para>'false' </para>
              </description>
              <description>
                <para>When false, User ID and Password are specified in the connection. When true, the current Windows account credentials are used for authentication.</para>
                <para>Recognized values are true, false, yes, no, and sspi (strongly recommended), which is equivalent to true. </para>
                <para>If User ID and Password are specified and Integrated Security is set to true, the User ID and Password will be ignored and Integrated Security will be used.</para>
                <para>
                  <see cref="T:System.Data.SqlClient.SqlCredential" /> is a more secure way to specify credentials for a connection that uses ssNoVersion Authentication (Integrated Security=false).</para>
              </description>
            </item>
            <item>
              <term>
                <para>Max Pool Size</para>
              </term>
              <description>
                <para>100</para>
              </description>
              <description>
                <para>The maximum number of connections that are allowed in the pool.</para>
                <para>Valid values are greater than or equal to 1. Values that are less than Min Pool Size generate an error.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Min Pool Size</para>
              </term>
              <description>
                <para>0</para>
              </description>
              <description>
                <para>The minimum number of connections that are allowed in the pool.</para>
                <para>Valid values are greater than or equal to 0. Zero (0) in this field means no minimum connections are initially opened.</para>
                <para>Values that are greater than Max Pool Size generate an error.</para>
              </description>
            </item>
            <item>
              <term>
                <para>MultipleActiveResultSets </para>
              </term>
              <description>
                <para>'false' </para>
              </description>
              <description>
                <para>When true, an application can maintain multiple active result sets (MARS). When false, an application must process or cancel all result sets from one batch before it can execute any other batch on that connection.</para>
                <para>Recognized values are true and false.</para>
                <para>For more information, see <see cref="http://msdn.microsoft.com//library/cfa084cz.aspx">Multiple Active Result Sets (MARS)</see>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>MultiSubnetFailover</para>
              </term>
              <description>
                <para>FALSE</para>
              </description>
              <description>
                <para>Always specify multiSubnetFailover=True when connecting to the availability group listener of a SQL Server 2012 (or later) availability group or a SQL Server 2012 (or later) Failover Cluster Instance. multiSubnetFailover=True configures SqlClient to provide faster detection of and connection to the (currently) active server. Possible values are Yes and No, True and False or 1 and 0. For example:</para>
                <code>MultiSubnetFailover=True</code>
                <para>The default is False. For more information about SqlClient's support for Always On AGs, see <format type="text/html"><a href="61e0b396-09d7-4e13-9711-7dcbcbd103a0">SqlClient Support for High Availability, Disaster Recovery</a></format>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Network Library </para>
                <para>-or- </para>
                <para>Network</para>
                <para>-or- </para>
                <para>Net</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The network library used to establish a connection to an instance of ssNoVersion. Supported values include: </para>
                <para>dbnmpntw (Named Pipes)</para>
                <para>dbmsrpcn (Multiprotocol, Windows RPC)</para>
                <para>dbmsadsn (Apple Talk)</para>
                <para>dbmsgnet (VIA)</para>
                <para>dbmslpcn (Shared Memory)</para>
                <para>dbmsspxn (IPX/SPX)</para>
                <para>dbmssocn (TCP/IP)</para>
                <para>Dbmsvinn (Banyan Vines)</para>
                <para>The corresponding network DLL must be installed on the system to which you connect. If you do not specify a network and you use a local server (for example, "." or "(local)"), shared memory is used. In this example, the network library is Win32 Winsock TCP/IP (dbmssocn), and 1433 is the port being used.</para>
                <code>Network Library=dbmssocn;Data Source=000.000.000.000,1433;</code>
              </description>
            </item>
            <item>
              <term>
                <para>Packet Size</para>
              </term>
              <description>
                <para>8000</para>
              </description>
              <description>
                <para>Size in bytes of the network packets used to communicate with an instance of ssNoVersion.</para>
                <para>The packet size can be greater than or equal to 512 and less than or equal to 32768.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Password </para>
                <para>-or- </para>
                <para>PWD</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The password for the ssNoVersion account logging on. Not recommended. To maintain a high level of security, we strongly recommend that you use the Integrated Security or Trusted_Connection keyword instead. <see cref="T:System.Data.SqlClient.SqlCredential" /> is a more secure way to specify credentials for a connection that uses ssNoVersion Authentication.</para>
                <para>The password must be 128 characters or less.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Persist Security Info </para>
                <para>-or- </para>
                <para>PersistSecurityInfo</para>
              </term>
              <description>
                <para>'false' </para>
              </description>
              <description>
                <para>When set to false or no (strongly recommended), security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. Resetting the connection string resets all connection string values including the password. Recognized values are true, false, yes, and no. </para>
              </description>
            </item>
            <item>
              <term>
                <para>Pooling</para>
              </term>
              <description>
                <para>'true'</para>
              </description>
              <description>
                <para>When the value of this key is set to true, any newly created connection will be added to the pool when closed by the application. In a next attempt to open the same connection, that connection will be drawn from the pool.</para>
                <para>Connections are considered the same if they have the same connection string. Different connections have different connection strings.</para>
                <para>The value of this key can be "true", "false", "yes", or "no".</para>
              </description>
            </item>
            <item>
              <term>
                <para>Replication</para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>true if replication is supported using the connection. </para>
              </description>
            </item>
            <item>
              <term>
                <para>Transaction Binding</para>
              </term>
              <description>
                <para>Implicit Unbind</para>
              </description>
              <description>
                <para>Controls connection association with an enlisted System.Transactions transaction.</para>
                <para>Possible values are:</para>
                <para>Transaction Binding=Implicit Unbind;</para>
                <para>Transaction Binding=Explicit Unbind;</para>
                <para>Implicit Unbind causes the connection to detach from the transaction when it ends. After detaching, additional requests on the connection are performed in autocommit mode. The System.Transactions.Transaction.Current property is not checked when executing requests while the transaction is active. After the transaction has ended, additional requests are performed in autocommit mode. </para>
                <para>If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw <see cref="T:System.InvalidOperationException" />.</para>
                <para>Explicit Unbind causes the connection to remain attached to the transaction until the connection is closed or an explicit SqlConnection.TransactionEnlist(null) is called. Beginning in net_v40_long, changes to Implicit Unbind make Explicit Unbind obsolete. An InvalidOperationException is thrown if Transaction.Current is not the enlisted transaction or if the enlisted transaction is not active.</para>
              </description>
            </item>
            <item>
              <term>
                <para>TrustServerCertificate</para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>When set to true, SSL is used to encrypt the channel when bypassing walking the certificate chain to validate trust. If TrustServerCertificate is set to true and Encrypt is set to false, the channel is not encrypted. Recognized values are true, false, yes, and no. For more information, see <format type="text/html"><a href="0977aeee-04d1-4cce-bbed-750c77fce06e">Connection String Syntax (ADO.NET)</a></format>.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Type System Version</para>
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>A string value that indicates the type system the application expects. The functionality available to a client application is dependent on the version of ssNoVersion and the compatibility level of the database. Explicitly setting the type system version that the client application was written for avoids potential problems that could cause an application to break if a different version of ssNoVersion is used.</para>
                <block subset="none" type="note">
                  <para>The type system version cannot be set for common language runtime (CLR) code executing in-process in SQL Server. For more information, see <format type="text/html"><a href="c7a324c4-160d-44c2-b593-641af06eca61">SQL Server Common Language Runtime Integration (ADO.NET)</a></format>.</para>
                </block>
                <para>Possible values are:</para>
                <para>Type System Version=SQL Server 2012;</para>
                <para>Type System Version=SQL Server 2008;</para>
                <para>Type System Version=SQL Server 2005;</para>
                <para>Type System Version=Latest;</para>
                <para>Type System Version=SQL Server 2012; specifies that the application will require version 11.0.0.0 of Microsoft.SqlServer.Types.dll. The other Type System Version settings will require version 10.0.0.0 of Microsoft.SqlServer.Types.dll.</para>
                <para>Latest is obsolete and should not be used. Latest is equivalent to Type System Version=SQL Server 2008;.</para>
              </description>
            </item>
            <item>
              <term>
                <para>User ID </para>
                <para>-or-</para>
                <para>UID</para>
                <para>-or-</para>
                <para />
              </term>
              <description>
                <para>N/A</para>
              </description>
              <description>
                <para>The ssNoVersion login account. Not recommended. To maintain a high level of security, we strongly recommend that you use the Integrated Security or Trusted_Connection keywords instead. <see cref="T:System.Data.SqlClient.SqlCredential" /> is a more secure way to specify credentials for a connection that uses ssNoVersion Authentication.</para>
                <para>The user ID must be 128 characters or less.</para>
              </description>
            </item>
            <item>
              <term>
                <para>User Instance</para>
              </term>
              <description>
                <para>'false'</para>
              </description>
              <description>
                <para>A value that indicates whether to redirect the connection from the default ssNoVersion Express instance to a runtime-initiated instance running under the account of the caller.</para>
              </description>
            </item>
            <item>
              <term>
                <para>Workstation ID </para>
                <para>-or-</para>
                <para>WSID</para>
              </term>
              <description>
                <para>The local computer name </para>
              </description>
              <description>
                <para>The name of the workstation connecting to ssNoVersion. </para>
                <para>The ID must be 128 characters or less.</para>
              </description>
            </item>
          </list>
          <para>The following list contains the valid names for connection pooling values within the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />. For more information, see <format type="text/html"><a href="7e51d44e-7c4e-4040-9332-f0190fe36f07">Connection Pooling for the .NET Framework Data Provider for SQL Server</a></format>.</para>
          <list type="bullet">
            <item>
              <para>Connection Lifetime (or Load Balance Timeout)</para>
            </item>
            <item>
              <para>Enlist</para>
            </item>
            <item>
              <para>Max Pool Size</para>
            </item>
            <item>
              <para>Min Pool Size</para>
            </item>
            <item>
              <para>Pooling</para>
            </item>
          </list>
          <para>When you are setting keyword or connection pooling values that require a Boolean value, you can use 'yes' instead of 'true', and 'no' instead of 'false'. Integer values are represented as strings.</para>
          <block subset="none" type="note">
            <para>The dnprdnshort Data Provider for ssNoVersion uses its own protocol to communicate with ssNoVersion. Therefore, it does not support the use of an ODBC data source name (DSN) when connecting to ssNoVersion because it does not add an ODBC layer.</para>
          </block>
          <block subset="none" type="note">
            <para>Universal data link (UDL) files are not supported for the dnprdnshort Data Provider for ssNoVersion.</para>
          </block>
          <block subset="none" type="note">
            <para>In this release, the application should use caution when constructing a connection string based on user input (for example when retrieving user ID and password information from a dialog box, and appending it to the connection string). The application should make sure that a user cannot embed additional connection string parameters in these values (for example, entering a password as "validpassword;database=somedb" in an attempt to attach to a different database). If you need to construct connection strings based on user input, use the new <see cref="T:System.Data.SqlClient.SqlConnectionStringBuilder" />, which validates the connection string and helps to eliminate this problem. See <format type="text/html"><a href="8434b608-c4d3-43d3-8ae3-6d8c6b726759">Building Connection Strings</a></format> for more information.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the string used to open a ssNoVersion database.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.RefreshProperties(System.ComponentModel.RefreshProperties.All)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.RecommendedAsConfigurable(true)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.Editor("Microsoft.VSDesigner.Data.SQL.Design.SqlConnectionStringEditor, Microsoft.VSDesigner, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.DefaultValue("")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ConnectionTimeout">
      <MemberSignature Language="C#" Value="public override int ConnectionTimeout { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <value>The amount of time (in seconds) the SqlConnection will wait when attempting to connect.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>You can set the amount of time a connection waits to time out by using the Connect Timeout or Connection Timeout keywords in the connection string. A value of 0 indicates no limit, and should be avoided in a <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" /> because an attempt to connect waits indefinitely.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the time to wait while trying to establish a connection before terminating the attempt and generating an error.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="CreateCommand">
      <MemberSignature Language="C#" Value="public System.Data.SqlClient.SqlCommand CreateCommand ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <para>Creates a new instance of the <see cref="T:System.Data.SqlClient.SqlCommand" /> class with the connection referencing the current <see cref="T:System.Data.SqlClient.SqlCommand" /> instance.</para>
          <para>The returned <see cref="T:System.Data.SqlClient.SqlCommand" /> instance can be used to execute T-SQL statements or stored procedures against the current database connection.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates and returns a <see cref="T:System.Data.SqlClient.SqlCommand" /> object associated with the <see cref="T:System.Data.SqlClient.SqlConnection" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Data.SqlClient.SqlCommand" /> object.</para>
        </returns>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="CreateDbCommand">
      <MemberSignature Language="C#" Value="protected override System.Data.Common.DbCommand CreateDbCommand ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.Common.DbCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Database">
      <MemberSignature Language="C#" Value="public override string Database { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <value>Gets a <see cref="T:System.String" /> value representing the current SQL Server database.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="P:System.Data.SqlClient.SqlConnection.Database" /> property updates dynamically. If you change the current database using a tsql statement or the <see cref="M:System.Data.SqlClient.SqlConnection.ChangeDatabase(System.String)" /> method, an informational message is sent and the property is updated automatically.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the name of the current database or the database to be used after a connection is opened.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="DataSource">
      <MemberSignature Language="C#" Value="public override string DataSource { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <value>Gets a <see cref="T:System.String" /> value representing the current SQL Server instance.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <block subset="none" type="note">
            <para>  The <see cref="P:System.Data.SqlClient.SqlConnection.DataSource" /> property returns null if the connection string for the <see cref="T:System.Data.SqlClient.SqlConnection" /> is "context connection=true".</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the name of the instance of ssNoVersion to which to connect.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.Browsable(true)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Dispose">
      <MemberSignature Language="C#" Value="protected override void Dispose (bool disposing);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="disposing" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="disposing">To be added: an object of type 'bool'</param>
        <summary>Disposes the current <see cref="T:System.Data.SqlClient.SqlConnection" /> instance.</summary>
        <remarks>
          <para>
Disposes the current <see cref="T:System.Data.SqlClient.SqlConnection" /> instance.
</para>
          <para>
Disposing this class will close the current connection, if one is active.
</para>
        </remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="EnlistDistributedTransaction">
      <MemberSignature Language="C#" Value="public void EnlistDistributedTransaction (System.EnterpriseServices.ITransaction transaction);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="transaction" Type="System.EnterpriseServices.ITransaction" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>You can use the <see cref="M:System.Data.SqlClient.SqlConnection.EnlistTransaction(System.Transactions.Transaction)" /> method to enlist in a distributed transaction. Because it enlists a connection in a <see cref="T:System.Transactions.Transaction" /> instance, EnlistTransaction takes advantage of functionality available in the <see cref="N:System.Transactions" /> namespace for managing distributed transactions, making it preferable to EnlistDistributedTransaction for this purpose. For more information, see <format type="text/html"><a href="718b257c-bcb2-408e-b004-a7b0adb1c176">Performing a Distributed Transaction</a></format>.</para>
          <para>You can continue to enlist in an existing distributed transaction using the EnlistDistributedTransaction method if auto-enlistment is disabled. Enlisting in an existing distributed transaction makes sure that, if the transaction is committed or rolled back, modifications made by the code at the data source are also committed or rolled back. </para>
          <para>EnlistDistributedTransaction returns an exception if the <see cref="T:System.Data.SqlClient.SqlConnection" /> has already started a transaction using <see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction" />. However, if the transaction is a local transaction started at the data source (for example, by explicitly executing the BEGIN TRANSACTION statement using an <see cref="T:System.Data.SqlClient.SqlCommand" /> object), EnlistDistributedTransaction rolls back the local transaction and enlists in the existing distributed transaction as requested. You do not receive notice that the local transaction was rolled back, and are responsible for managing any local transactions not started using <see cref="M:System.Data.SqlClient.SqlConnection.BeginTransaction" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Enlists in the specified transaction as a distributed transaction.</para>
        </summary>
        <param name="transaction">
          <attribution license="cc4" from="Microsoft" modified="false" />A reference to an existing <see cref="T:System.EnterpriseServices.ITransaction" /> in which to enlist.</param>
      </Docs>
    </Member>
    <Member MemberName="FireInfoMessageEventOnUserErrors">
      <MemberSignature Language="C#" Value="public bool FireInfoMessageEventOnUserErrors { set; get; }" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When you set <see cref="P:System.Data.SqlClient.SqlConnection.FireInfoMessageEventOnUserErrors" /> to true, errors that were previously treated as exceptions are now handled as <see cref="E:System.Data.SqlClient.SqlConnection.InfoMessage" /> events. All events fire immediately and are handled by the event handler. If is <see cref="P:System.Data.SqlClient.SqlConnection.FireInfoMessageEventOnUserErrors" /> is set to false, then <see cref="E:System.Data.SqlClient.SqlConnection.InfoMessage" /> events are handled at the end of the procedure.</para>
          <block subset="none" type="note">
            <para>An error with a severity level of 17 or above that causes the server to stop processing the command needs to be handled as an exception. In this case, an exception is thrown regardless of how the error is handled in the <see cref="E:System.Data.SqlClient.SqlConnection.InfoMessage" /> event. </para>
          </block>
          <para>For more information on working with events, see <format type="text/html"><a href="5a29de74-acfc-4134-8616-829dd7ce0710">Connection Events</a></format>. For more information on errors generated by the ssNoVersion engine, see ssNoVersion Books Online.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets the <see cref="P:System.Data.SqlClient.SqlConnection.FireInfoMessageEventOnUserErrors" /> property.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="GetSchema">
      <MemberSignature Language="C#" Value="public override System.Data.DataTable GetSchema ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.DataTable</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns schema information for the data source of this <see cref="T:System.Data.SqlClient.SqlConnection" />. For more information about scheme, see <see cref="http://msdn.microsoft.com/library/ms254969.aspx">SQL Server Schema Collections</see>.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Data.DataTable" /> that contains schema information.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="GetSchema">
      <MemberSignature Language="C#" Value="public override System.Data.DataTable GetSchema (string collectionName);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.DataTable</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="collectionName" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns schema information for the data source of this <see cref="T:System.Data.SqlClient.SqlConnection" /> using the specified string for the schema name.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Data.DataTable" /> that contains schema information. </para>
        </returns>
        <param name="collectionName">
          <attribution license="cc4" from="Microsoft" modified="false" />Specifies the name of the schema to return.</param>
      </Docs>
    </Member>
    <Member MemberName="GetSchema">
      <MemberSignature Language="C#" Value="public override System.Data.DataTable GetSchema (string collectionName, string[] restrictionValues);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.DataTable</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="collectionName" Type="System.String" />
        <Parameter Name="restrictionValues" Type="System.String[]" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <paramref name="restrictionValues" /> parameter can supply n depth of values, which are specified by the restrictions collection for a specific collection. In order to set values on a given restriction, and not set the values of other restrictions, you need to set the preceding restrictions to null and then put the appropriate value in for the restriction that you would like to specify a value for.</para>
          <para>An example of this is the "Tables" collection. If the "Tables" collection has three restrictions--database, owner, and table name--and you want to get back only the tables associated with the owner "Carl", you need to pass in the following values: null, "Carl". If a restriction value is not passed in, the default values are used for that restriction. This is the same mapping as passing in null, which is different from passing in an empty string for the parameter value. In that case, the empty string ("") is considered to be the value for the specified parameter.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns schema information for the data source of this <see cref="T:System.Data.SqlClient.SqlConnection" /> using the specified string for the schema name and the specified string array for the restriction values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A <see cref="T:System.Data.DataTable" /> that contains schema information. </para>
        </returns>
        <param name="collectionName">
          <attribution license="cc4" from="Microsoft" modified="false" />Specifies the name of the schema to return.</param>
        <param name="restrictionValues">
          <attribution license="cc4" from="Microsoft" modified="false" />A set of restriction values for the requested schema.</param>
      </Docs>
    </Member>
    <Member MemberName="InfoMessage">
      <MemberSignature Language="C#" Value="public event System.Data.SqlClient.SqlInfoMessageEventHandler InfoMessage;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.SqlClient.SqlInfoMessageEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Clients that want to process warnings or informational messages sent by the server should create an <see cref="T:System.Data.SqlClient.SqlInfoMessageEventHandler" /> delegate to listen to this event.</para>
          <para>The <see cref="E:System.Data.SqlClient.SqlConnection.InfoMessage" /> event occurs when a message with a severity of 10 or less is returned by ssNoVersion. Messages that have a severity between 11 and 20 raise an error and messages that have a severity over 20 causes the connection to close. For more information on ssNoVersion error levels, see "Database Engine Error Severities" in ssNoVersion Books Online.</para>
          <para>For more information and an example, see <format type="text/html"><a href="5a29de74-acfc-4134-8616-829dd7ce0710">Working with Connection Events</a></format>.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Occurs when ssNoVersion returns a warning or informational message.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Open">
      <MemberSignature Language="C#" Value="public override void Open ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.Data.SqlClient.SqlConnection" /> draws an open connection from the connection pool if one is available. Otherwise, it establishes a new connection to an instance of ssNoVersion.</para>
          <block subset="none" type="note">
            <para>If the <see cref="T:System.Data.SqlClient.SqlConnection" /> goes out of scope, it is not closed. Therefore, you must explicitly close the connection by calling <see cref="M:System.Data.SqlClient.SqlConnection.Close" />.</para>
          </block>
          <block subset="none" type="note">
            <para>If you specify a port number other than 1433 when you are trying to connect to an instance of ssNoVersion and using a protocol other than TCP/IP, the <see cref="M:System.Data.SqlClient.SqlConnection.Open" /> method fails. To specify a port number other than 1433, include "server=machinename,port number" in the connection string, and use the TCP/IP protocol.</para>
          </block>
          <block subset="none" type="note">
            <para>The dnprdnshort Data Provider for ssNoVersion requires the Security permission with "Allows calls to unmanaged assemblies" enabled (<see cref="T:System.Security.Permissions.SecurityPermission" /> with <see cref="T:System.Security.Permissions.SecurityPermissionFlag" /> set to UnmanagedCode) to open a <see cref="T:System.Data.SqlClient.SqlConnection" /> with SQL Debugging enabled.</para>
          </block>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Opens a database connection with the property settings specified by the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="PacketSize">
      <MemberSignature Language="C#" Value="public int PacketSize { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <value>The packet size, in bytes.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>If an application performs bulk copy operations, or sends or receives lots of text or image data, a packet size larger than the default may improve efficiency because it causes fewer network read and write operations. If an application sends and receives small amounts of information, you can set the packet size to 512 bytes (using the Packet Size value in the <see cref="P:System.Data.SqlClient.SqlConnection.ConnectionString" />), which is sufficient for most data transfer operations. For most applications, the default packet size is best. </para>
          <para>
            <see cref="P:System.Data.SqlClient.SqlConnection.PacketSize" /> may be a value in the range of 512 and 32767 bytes. An exception is generated if the value is outside this range.</para>
          <para>Setting the default value to a number greater than 8000 will cause the packets to use the MultiPage allocator on the instance of ssNoVersion instead of the much more efficient SinglePage allocator, reducing the overall scalability of the ssNoVersion. For more information on how ssNoVersion uses memory, see <see cref="http://go.microsoft.com/fwlink/?LinkId=143705">Memory Architecture</see> in ssNoVersion Books Online.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the size (in bytes) of network packets used to communicate with an instance of ssNoVersion.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ServerVersion">
      <MemberSignature Language="C#" Value="public override string ServerVersion { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <value>A <see cref="T:System.String" /> value representing the version of the currently connected SQL Server instance.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The version is of the form ##.##.####, where the first two digits are the major version, the next two digits are the minor version, and the last four digits are the release version. The string is of the form major.minor.build, where major and minor are exactly two digits and build is exactly four digits.</para>
          <para>
            <see cref="P:System.Data.SqlClient.SqlConnection.ServerVersion" /> was called while the returned Task was not completed and the connection was not opened after a call to <see cref="M:System.Data.SqlClient.SqlConnection.OpenAsync(System.Threading.CancellationToken)" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets a string that contains the version of the instance of ssNoVersion to which the client is connected.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.Browsable(false)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="State">
      <MemberSignature Language="C#" Value="public override System.Data.ConnectionState State { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.ConnectionState</ReturnType>
      </ReturnValue>
      <Docs>
        <value>The current connection state, represented by an instance of the <see cref="T:System.Data.ConnectionState" /> enum.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns an <see cref="T:System.Data.ConnectionState" /> enumeration indicating the state of the <see cref="T:System.Data.SqlClient.SqlConnection" />. Closing and reopening the connection will refresh the value of <see cref="P:System.Data.SqlClient.SqlConnection.State" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Indicates the state of the <see cref="T:System.Data.SqlClient.SqlConnection" /> during the most recent network operation performed on the connection.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.ComponentModel.Browsable(false)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="StateChange">
      <MemberSignature Language="C#" Value="public event System.Data.StateChangeEventHandler StateChange;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.StateChangeEventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>This event is triggered when the <see cref="T:System.Data.SqlClient.SqlConnection" /> connection status changes to open or closed.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Occurs when the state of the event changes.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.Data.DataSysDescription(Description="Event triggered when the connection changes state.")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="StatisticsEnabled">
      <MemberSignature Language="C#" Value="public bool StatisticsEnabled { set; get; }" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DefaultValue(false)</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Enabling statistics gathering has a minor, but measurable effect on performance and therefore should be enabled only when it is required.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When set to true, enables statistics gathering for the current connection.</para>
        </summary>
      </Docs>
    </Member>
    <Member MemberName="System.Data.IDbConnection.BeginTransaction">
      <MemberSignature Language="C#" Value="System.Data.IDbTransaction IDbConnection.BeginTransaction ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.IDbTransaction</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Once the transaction has completed, you must explicitly commit or roll back the transaction by using the <see cref="M:System.Data.IDbTransaction.Commit" /> or <see cref="M:System.Data.IDbTransaction.Rollback" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Begins a database transaction.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object that represents the new transaction.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="System.Data.IDbConnection.BeginTransaction">
      <MemberSignature Language="C#" Value="System.Data.IDbTransaction IDbConnection.BeginTransaction (System.Data.IsolationLevel iso);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.IDbTransaction</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iso" Type="System.Data.IsolationLevel" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Once the transaction has completed, you must explicitly commit or roll back the transaction by using the <see cref="M:System.Data.IDbTransaction.Commit" /> or <see cref="M:System.Data.IDbTransaction.Rollback" /> method.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Begins a database transaction with the specified <see cref="T:System.Data.IsolationLevel" /> value.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An object that represents the new transaction.</para>
        </returns>
        <param name="iso">
          <attribution license="cc4" from="Microsoft" modified="false" />One of the <see cref="T:System.Data.IsolationLevel" /> values. </param>
      </Docs>
    </Member>
    <Member MemberName="System.Data.IDbConnection.CreateCommand">
      <MemberSignature Language="C#" Value="System.Data.IDbCommand IDbConnection.CreateCommand ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.IDbCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates and returns a Command object that is associated with the connection.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A Command object that is associated with the connection.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="System.ICloneable.Clone">
      <MemberSignature Language="C#" Value="object ICloneable.Clone ();" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This member is an explicit interface member implementation. It can be used only when the <see cref="T:System.Data.SqlClient.SqlConnection" /> instance is cast to an <see cref="T:System.ICloneable" /> interface.</para>
          <para>This member is only supported by the .NET Compact Framework.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a new object that is a copy of the current instance.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A new object that is a copy of this instance.</para>
        </returns>
      </Docs>
    </Member>
    <Member MemberName="WorkstationId">
      <MemberSignature Language="C#" Value="public string WorkstationId { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <value>A <see cref="T:System.String" /> value representing the connection's network client.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The string typically contains the network name of the client. The <see cref="P:System.Data.SqlClient.SqlConnection.WorkstationId" /> property corresponds to the Workstation ID connection string property.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets a string that identifies the database client.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
  </Members>
</Type>