From 6ee6e87a5aa7c886b085b1fd457e1d4d75c78c2a Mon Sep 17 00:00:00 2001 From: Terry Jin Date: Thu, 19 Jul 2018 19:45:57 -0700 Subject: [PATCH 1/8] migration miss table --- includes/fxrefbanner.md | 3 ++ includes/ssnoversion-md.md | 1 + xml/System.Data.SqlClient/SqlConnection.xml | 54 +++++++++++++++++++-- xml/System.Windows.Forms/Binding.xml | 12 +++-- xml/System.Xml.Xsl/XslTransform.xml | 30 ++++++++++-- xml/System/ArgumentNullException.xml | 10 +++- 6 files changed, 96 insertions(+), 14 deletions(-) create mode 100644 includes/fxrefbanner.md create mode 100644 includes/ssnoversion-md.md diff --git a/includes/fxrefbanner.md b/includes/fxrefbanner.md new file mode 100644 index 00000000000..e2f90a0a0ab --- /dev/null +++ b/includes/fxrefbanner.md @@ -0,0 +1,3 @@ +> [!NOTE] +> The .NET API Reference documentation has a new home. Visit the [.NET API Browser](https://docs.microsoft.com/dotnet/api/?view=netframework-4.7.1) on docs.microsoft.com to see the new experience. + \ No newline at end of file diff --git a/includes/ssnoversion-md.md b/includes/ssnoversion-md.md new file mode 100644 index 00000000000..9b0ee94fd50 --- /dev/null +++ b/includes/ssnoversion-md.md @@ -0,0 +1 @@ +SQL Server \ No newline at end of file diff --git a/xml/System.Data.SqlClient/SqlConnection.xml b/xml/System.Data.SqlClient/SqlConnection.xml index c916a11f22b..dddf9b7974e 100644 --- a/xml/System.Data.SqlClient/SqlConnection.xml +++ b/xml/System.Data.SqlClient/SqlConnection.xml @@ -1,4 +1,4 @@ - + @@ -1092,7 +1092,7 @@ End Module ## Remarks The 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 , minus security information if the Persist Security Info value is set to `false` (default). The .NET Framework Data Provider for SQL Server does not persist or return the password in a connection string unless you set Persist Security Info to `true`. - + You can use the property to connect to a database. The following example illustrates a typical connection string. ``` @@ -1117,7 +1117,49 @@ End Module The following table lists the valid names for keyword values within the . - The following list contains the valid names for connection pooling values within the . For more information, see [SQL Server Connection Pooling (ADO.NET)](~/docs/framework/data/adonet/sql-server-connection-pooling.md). +|Keyword|Default|Description| +|-------------|-------------|-----------------| +|Addr|N/A|Synonym of **Data Source**.| +|Address|N/A|Synonym of **Data Source**.| +|App|N/A|Synonym of **Application Name**.| +|Application Name|N/A|The name of the application, or '.NET SQLClient Data Provider' if no application name is provided.

An application name can be 128 characters or less.| +|`ApplicationIntent`|`ReadWrite`|Declares the application workload type when connecting to a server. Possible values are `ReadOnly` and `ReadWrite`. For example:

`ApplicationIntent=ReadOnly`

For more information about SqlClient support for Always On Availability Groups, see [SqlClient Support for High Availability, Disaster Recovery](http://msdn.microsoft.com/library/61e0b396-09d7-4e13-9711-7dcbcbd103a0).| +|Asynchronous Processing

-or-

Async|'false'|When `true`, enables asynchronous operation support. Recognized values are `true`, `false`, `yes`, and `no`.

This property is ignored beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)]. For more information about SqlClient support for asynchronous programming, see [Asynchronous Programming](http://msdn.microsoft.com/library/85da7447-7125-426e-aa5f-438a290d1f77).| +|AttachDBFilename

-or-

Extended Properties

-or-

Initial File Name|N/A|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.

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.

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.

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.

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. **Note:** Remote server, HTTP, and UNC path names are not supported.

The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:

`"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"`

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.| +|Authentication|N/A|The authentication method used for [Connecting to SQL Database By Using Azure Active Directory Authentication](https://azure.microsoft.com/documentation/articles/sql-database-aad-authentication/#7-connect-to-your-database-by-using-azure-active-directory-identities).

Valid values are:

Active Directory Integrated, Active Directory Password, Sql Password.| +|Column Encryption Setting|N/A|Enables or disables [Always Encrypted](https://msdn.microsoft.com/library/mt163865.aspx) functionality for the connection.| +|Connect Timeout

-or-

Connection Timeout

-or-

Timeout|15|The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.

Valid values are greater than or equal to 0 and less than or equal to 2147483647.

When opening a connection to a Azure SQL Database, set the connection timeout to 30 seconds.| +|Connection Lifetime

-or-

Load Balance Timeout|0|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.

A value of zero (0) causes pooled connections to have the maximum connection timeout.| +|ConnectRetryCount|1|Controls the number of reconnection attempts after the client identifies an idle connection failure. Valid values are 0 to 255. The default is 1. 0 means do not attempt to reconnect (disable connection resiliency).

For additional information about idle connection resiliency, see [Technical Article – Idle Connection Resiliency](http://go.microsoft.com/fwlink/?LinkId=393996).| +|ConnectRetryInterval|10|Specifies the time between each connection retry attempt (ConnectRetryCount). Valid values are 1 to 60 seconds (default=10), applied after the first reconnection attempt. When a broken connection is detected, the client immediately attempts to reconnect; this is the first reconnection attempt and only occurs if ConnectRetryCount is greater than 0. If the first reconnection attempt fails and ConnectRetryCount is greater than 1, the client waits ConnectRetryInterval to try the second and subsequent reconnection attempts.

For additional information about idle connection resiliency, see [Technical Article – Idle Connection Resiliency](http://go.microsoft.com/fwlink/?LinkId=393996).| +|Context Connection|'false'|`true` if an in-process connection to [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] should be made.| +|Current Language

-or-

Language|N/A|Sets the language used for database server warning or error messages.

The language name can be 128 characters or less.| +|Data Source

-or-

Server

-or-

Address

-or-

Addr

-or-

Network Address|N/A|The name or network address of the instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] to which to connect. The port number can be specified after the server name:

`server=tcp:servername, portnumber`

When specifying a local instance, always use (local). To force a protocol, add one of the following prefixes:

`np:(local), tcp:(local), lpc:(local)`

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], you can also connect to a LocalDB database as follows:

`server=(localdb)\\myInstance`

For more information about LocalDB, see [SqlClient Support for LocalDB](http://msdn.microsoft.com/library/cf796898-5575-46f2-ae6e-21e5aa8c4123).

**Data Source** must use the TCP format or the Named Pipes format.

TCP format is as follows:

- tcp:\\\
- tcp:\,\

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. This format is not applicable when connecting to Azure SQL Database. TCP is automatically selected for connections to Azure SQL Database when no protocol is specified.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

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.

The Named Pipes format is as follows:

- np:\\\\\pipe\\

The Named Pipes format MUST start with the prefix "np:" and is followed by a named pipe name.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

The pipe name is used to identify the database instance to which the .NET Framework application will be connected.

If the value of the **Network** key is specified, the prefixes "tcp:" and "np:" should not be specified. **Note:** You can force the use of TCP instead of shared memory, either by prefixing **tcp:** to the server name in the connection string, or by using **localhost**.| +|Encrypt|'false'|When `true`, [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [Connection String Syntax](http://msdn.microsoft.com/library/0977aeee-04d1-4cce-bbed-750c77fce06e).

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], when `TrustServerCertificate` is false and `Encrypt` is true, the server name (or IP address) in a [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [Accepted wildcards used by server certificates for server authentication](http://support.microsoft.com/kb/258858).| +|Enlist|'true'|`true` indicates that the [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] connection pooler automatically enlists the connection in the creation thread's current transaction context.| +|Failover Partner|N/A|The name of the failover partner server where database mirroring is configured.

If the value of this key is "", then **Initial Catalog** must be present, and its value must not be "".

The server name can be 128 characters or less.

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.

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.| +|Initial Catalog

-or-

Database|N/A|The name of the database.

The database name can be 128 characters or less.| +|Integrated Security

-or-

Trusted_Connection|'false'|When `false`, User ID and Password are specified in the connection. When `true`, the current Windows account credentials are used for authentication.

Recognized values are `true`, `false`, `yes`, `no`, and `sspi` (strongly recommended), which is equivalent to `true`.

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.

is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication (`Integrated Security=false`).| +|Max Pool Size|100|The maximum number of connections that are allowed in the pool.

Valid values are greater than or equal to 1. Values that are less than **Min Pool Size** generate an error.| +|Min Pool Size|0|The minimum number of connections that are allowed in the pool.

Valid values are greater than or equal to 0. Zero (0) in this field means no minimum connections are initially opened.

Values that are greater than **Max Pool Size** generate an error.| +|MultipleActiveResultSets|'false'|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.

Recognized values are `true` and `false`.

For more information, see [Multiple Active Result Sets (MARS)](http://msdn.microsoft.com//library/cfa084cz.aspx).| +|`MultiSubnetFailover`|FALSE|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:

`MultiSubnetFailover=True`

The default is `False`. For more information about SqlClient's support for Always On AGs, see [SqlClient Support for High Availability, Disaster Recovery](http://msdn.microsoft.com/library/61e0b396-09d7-4e13-9711-7dcbcbd103a0).| +|Network Library

-or-

Network

-or-

Net|N/A|The network library used to establish a connection to an instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)]. Supported values include:

dbnmpntw (Named Pipes)

dbmsrpcn (Multiprotocol, Windows RPC)

dbmsadsn (Apple Talk)

dbmsgnet (VIA)

dbmslpcn (Shared Memory)

dbmsspxn (IPX/SPX)

dbmssocn (TCP/IP)

Dbmsvinn (Banyan Vines)

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.

`Network Library=dbmssocn;Data Source=000.000.000.000,1433;`| +|Packet Size|8000|Size in bytes of the network packets used to communicate with an instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)].

The packet size can be greater than or equal to 512 and less than or equal to 32768.| +|Password

-or-

PWD|N/A|The password for the [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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. is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication.

The password must be 128 characters or less.| +|Persist Security Info

-or-

PersistSecurityInfo|'false'|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`.| +|PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See [PoolBlockingPeriod Property](../Topic/PoolBlockingPeriod%20Property.md) for details.| +|Pooling|'true'|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.

Connections are considered the same if they have the same connection string. Different connections have different connection strings.

The value of this key can be "true", "false", "yes", or "no".| +|Replication|'false'|`true` if replication is supported using the connection.| +|Transaction Binding|Implicit Unbind|Controls connection association with an enlisted `System.Transactions` transaction.

Possible values are:

`Transaction Binding=Implicit Unbind;`

`Transaction Binding=Explicit Unbind;`

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.

If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw .

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 [!INCLUDE[net_v40_long](~/includes/net-v40-long-md.md)], 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.| +|TransparentNetworkIPResolution|See description.|When the value of this key is set to `true`, the application is required to retrieve all IP addresses for a particular DNS entry and attempt to connect with the first one in the list. If the connection is not established within 0.5 seconds, the application will try to connect to all others in parallel. When the first answers, the application will establish the connection with the respondent IP address.

If the `MultiSubnetFailover` key is set to `true`, `TransparentNetworkIPResolution` is ignored.

If the `Failover Partner` key is set, `TransparentNetworkIPResolution` is ignored.

The value of this key must be `true`, `false`, `yes`, or `no`.

A value of `yes` is treated the same as a value of `true`.

A value of `no` is treated the same as a value of `false`.

The default values are as follows:

  • `false` when:

    • Connecting to Azure SQL Database where the data source ends with:

      • .database.chinacloudapi.cn
      • .database.usgovcloudapi.net
      • .database.cloudapi.de
      • .database.windows.net
    • `Authentication` is 'Active Directory Password' or 'Active Directory Integrated'
  • `true` in all other cases.
| +|TrustServerCertificate|'false'|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 [Connection String Syntax](http://msdn.microsoft.com/library/0977aeee-04d1-4cce-bbed-750c77fce06e).| +|Type System Version|N/A|A string value that indicates the type system the application expects. The functionality available to a client application is dependent on the version of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] is used. **Note:** The type system version cannot be set for common language runtime (CLR) code executing in-process in SQL Server. For more information, see [SQL Server Common Language Runtime Integration](http://msdn.microsoft.com/library/c7a324c4-160d-44c2-b593-641af06eca61).

Possible values are:

`Type System Version=SQL Server 2012;`

`Type System Version=SQL Server 2008;`

`Type System Version=SQL Server 2005;`

`Type System Version=Latest;`

`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.

`Latest` is obsolete and should not be used. `Latest` is equivalent to `Type System Version=SQL Server 2008;`.| +|User ID

-or-

UID

-or-|N/A|The [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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. is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication.

The user ID must be 128 characters or less.| +|User Instance|'false'|A value that indicates whether to redirect the connection from the default [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Express instance to a runtime-initiated instance running under the account of the caller.| +|Workstation ID

-or-

WSID|The local computer name|The name of the workstation connecting to [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)].

The ID must be 128 characters or less.| + + The following list contains the valid names for connection pooling values within the . For more information, see [SQL Server Connection Pooling (ADO.NET)](http://msdn.microsoft.com/library/7e51d44e-7c4e-4040-9332-f0190fe36f07). - Connection Lifetime (or Load Balance Timeout) @@ -1130,7 +1172,7 @@ End Module - Pooling 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. - + > [!NOTE] > The .NET Framework Data Provider for SQL Server uses its own protocol to communicate with SQL Server. Therefore, it does not support the use of an ODBC data source name (DSN) when connecting to SQL Server because it does not add an ODBC layer. @@ -1151,6 +1193,10 @@ End Module ]]> An invalid connection string argument has been supplied, or a required connection string argument has not been supplied. + Connection Strings in ADO.NET + SQL Server Connection Pooling (ADO.NET) + Connecting to a Data Source in ADO.NET + ADO.NET Managed Providers and DataSet Developer Center diff --git a/xml/System.Windows.Forms/Binding.xml b/xml/System.Windows.Forms/Binding.xml index 0012d80a305..4447c450699 100644 --- a/xml/System.Windows.Forms/Binding.xml +++ b/xml/System.Windows.Forms/Binding.xml @@ -1,4 +1,4 @@ - + @@ -44,7 +44,13 @@ Second, you can specify an instance of any one of the classes in the following table as the data source. - Third, you must specify the navigation path, which can be an empty string (""), a single property name, or a period-delimited hierarchy of names. If you set the navigation path to an empty string, the method will be called on the underlying data source object. +|Description|C# example| +|-----------------|-----------------| +|Any class that implements or . These include the following: , , , or .|`DataSet ds = new DataSet("myDataSet");`| +|Any class that implements to create an indexed collection of objects. The collection must be created and filled before creating the . The objects in the list must all be of the same type; otherwise, an exception will be thrown.|`ArrayList ar1 = new ArrayList; Customer1 cust1 = new Customer("Louis"); ar1.Add(cust1);`| +|A strongly typed of strongly typed objects|`Customer [] custList = new Customer[3];`| + + Third, you must specify the navigation path, which can be an empty string (""), a single property name, or a period-delimited hierarchy of names. If you set the navigation path to an empty string, the method will be called on the underlying data source object. If the data source is a , which can contain multiple objects, the navigation path must be used to resolve to a specific column. @@ -144,7 +150,7 @@ [!code-cpp[Classic Binding Example#1](~/samples/snippets/cpp/VS_Snippets_Winforms/Classic Binding Example/CPP/source.cpp#1)] [!code-csharp[Classic Binding Example#1](~/samples/snippets/csharp/VS_Snippets_Winforms/Classic Binding Example/CS/source.cs#1)] [!code-vb[Classic Binding Example#1](~/samples/snippets/visualbasic/VS_Snippets_Winforms/Classic Binding Example/VB/source.vb#1)] - + ]]> diff --git a/xml/System.Xml.Xsl/XslTransform.xml b/xml/System.Xml.Xsl/XslTransform.xml index 353a69b775f..36c53383782 100644 --- a/xml/System.Xml.Xsl/XslTransform.xml +++ b/xml/System.Xml.Xsl/XslTransform.xml @@ -1,4 +1,4 @@ - + @@ -787,8 +787,14 @@ There are different ways to provide evidence. The following table describes what type of evidence to provide for common user scenarios. - +|Scenario|Type of evidence to provide| +|--------------|---------------------------------| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL); xslt.Load(xslReader,resolver,evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| +|The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| + ## Examples The following example performs an XSLT transformation where `xsltReader` is an containing a style sheet and `secureURL` is a trusted URL that can be used to create . The method is used to create which is applied to the style sheet. @@ -858,7 +864,14 @@ There are different ways to provide evidence. The following table describes what type of evidence to provide for common user scenarios. - ]]> +|Scenario|Type of evidence to provide| +|--------------|---------------------------------| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); xslt.Load(style sheet,resolver,evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| +|The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| + + ]]> The loaded resource is not a valid style sheet. The referenced style sheet requires functionality that is not allowed by the evidence provided. @@ -922,11 +935,18 @@ There are different ways to provide evidence. The following table describes what type of evidence to provide for common user scenarios. - +|Scenario|Type of evidence to provide| +|--------------|---------------------------------| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); xslt.Load(xslNav,resolver,evidence);`| +|The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| +|The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the `Evidence` class.| + + ## Examples The following example performs an XSLT transformation using a style sheet from an outside source. Because the style sheet comes from an untrusted source, the `resolver` and `evidence` parameters are set to `null`. - + [!code-csharp[XslTransform.Load5#1](~/samples/snippets/csharp/VS_Snippets_Data/XslTransform.Load5/CS/trans_noev.cs#1)] [!code-vb[XslTransform.Load5#1](~/samples/snippets/visualbasic/VS_Snippets_Data/XslTransform.Load5/VB/trans_noev.vb#1)] diff --git a/xml/System/ArgumentNullException.xml b/xml/System/ArgumentNullException.xml index 7598cac3f9f..a9f53a3ee86 100644 --- a/xml/System/ArgumentNullException.xml +++ b/xml/System/ArgumentNullException.xml @@ -1,4 +1,4 @@ - + @@ -163,7 +163,13 @@ The following table shows the initial property values for an instance of . - ]]> +|Property|Value| +|--------------|-----------| +||A null reference (`Nothing` in Visual Basic).| +||A localized error message string that identifies the null argument. For example, if the `paramName` argument is "arg1", the English language message string is:

`Value cannot be null.Parameter name: arg01`| +||The parameter name string.| + + ]]>
From 17b15b4c4b5482b5f7736f0654b74a766ea6fc22 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Thu, 19 Jul 2018 23:13:41 -0700 Subject: [PATCH 2/8] Delete fxrefbanner.md --- includes/fxrefbanner.md | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 includes/fxrefbanner.md diff --git a/includes/fxrefbanner.md b/includes/fxrefbanner.md deleted file mode 100644 index e2f90a0a0ab..00000000000 --- a/includes/fxrefbanner.md +++ /dev/null @@ -1,3 +0,0 @@ -> [!NOTE] -> The .NET API Reference documentation has a new home. Visit the [.NET API Browser](https://docs.microsoft.com/dotnet/api/?view=netframework-4.7.1) on docs.microsoft.com to see the new experience. - \ No newline at end of file From 0a7468be31ac1af65863235fdcd24a0d0d84159d Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Thu, 19 Jul 2018 23:15:16 -0700 Subject: [PATCH 3/8] Delete ssnoversion-md.md --- includes/ssnoversion-md.md | 1 - 1 file changed, 1 deletion(-) delete mode 100644 includes/ssnoversion-md.md diff --git a/includes/ssnoversion-md.md b/includes/ssnoversion-md.md deleted file mode 100644 index 9b0ee94fd50..00000000000 --- a/includes/ssnoversion-md.md +++ /dev/null @@ -1 +0,0 @@ -SQL Server \ No newline at end of file From 9d2012efd9dd37b44afa525b0cd6f89e92d5e316 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Thu, 19 Jul 2018 23:32:09 -0700 Subject: [PATCH 4/8] removed token / replaced msdn links --- xml/System.Data.SqlClient/SqlConnection.xml | 52 ++++++++++----------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/xml/System.Data.SqlClient/SqlConnection.xml b/xml/System.Data.SqlClient/SqlConnection.xml index dddf9b7974e..27c5b495b98 100644 --- a/xml/System.Data.SqlClient/SqlConnection.xml +++ b/xml/System.Data.SqlClient/SqlConnection.xml @@ -78,7 +78,7 @@ using (SqlConnection connection = new SqlConnection(connectionString)) If a is generated by the method executing a , the remains open when the severity level is 19 or less. When the severity level is 20 or greater, the server ordinarily closes the . However, the user can reopen the connection and continue. - An application that creates an instance of the object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. makes security demands using the object. Users can verify that their code has sufficient permissions by using the object. Users and administrators can also use the [Caspol.exe (Code Access Security Policy Tool)](~/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md) to modify security policy at the machine, user, and enterprise levels. For more information, see [Security](http://msdn.microsoft.com/library/9a9621d7-8883-4a4f-a874-65e8e09e20a6). For an example demonstrating how to use security demands, see [Code Access Security and ADO.NET](~/docs/framework/data/adonet/code-access-security.md). + An application that creates an instance of the object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. makes security demands using the object. Users can verify that their code has sufficient permissions by using the object. Users and administrators can also use the [Caspol.exe (Code Access Security Policy Tool)](~/docs/framework/tools/caspol-exe-code-access-security-policy-tool.md) to modify security policy at the machine, user, and enterprise levels. For more information, see [Security in .NET](~/docs//standard/security/index.md). For an example demonstrating how to use security demands, see [Code Access Security and ADO.NET](~/docs/framework/data/adonet/code-access-security.md). For more information about handling warning and informational messages from the server, see [Connection Events](~/docs/framework/data/adonet/connection-events.md). SQL Server engine errors and error messages are documented in SQL Server Books Online. @@ -1123,43 +1123,43 @@ End Module |Address|N/A|Synonym of **Data Source**.| |App|N/A|Synonym of **Application Name**.| |Application Name|N/A|The name of the application, or '.NET SQLClient Data Provider' if no application name is provided.

An application name can be 128 characters or less.| -|`ApplicationIntent`|`ReadWrite`|Declares the application workload type when connecting to a server. Possible values are `ReadOnly` and `ReadWrite`. For example:

`ApplicationIntent=ReadOnly`

For more information about SqlClient support for Always On Availability Groups, see [SqlClient Support for High Availability, Disaster Recovery](http://msdn.microsoft.com/library/61e0b396-09d7-4e13-9711-7dcbcbd103a0).| -|Asynchronous Processing

-or-

Async|'false'|When `true`, enables asynchronous operation support. Recognized values are `true`, `false`, `yes`, and `no`.

This property is ignored beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)]. For more information about SqlClient support for asynchronous programming, see [Asynchronous Programming](http://msdn.microsoft.com/library/85da7447-7125-426e-aa5f-438a290d1f77).| +|`ApplicationIntent`|`ReadWrite`|Declares the application workload type when connecting to a server. Possible values are `ReadOnly` and `ReadWrite`. For example:

`ApplicationIntent=ReadOnly`

For more information about SqlClient support for Always On Availability Groups, see [SqlClient Support for High Availability, Disaster Recovery](~/docs/framework/data/adonet/sql/sqlclient-support-for-high-availability-disaster-recovery.md).| +|Asynchronous Processing

-or-

Async|'false'|When `true`, enables asynchronous operation support. Recognized values are `true`, `false`, `yes`, and `no`.

This property is ignored beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)]. For more information about SqlClient support for asynchronous programming, see [Asynchronous Programming](~/docs/framework/data/adonet/asynchronous-programming.md).| |AttachDBFilename

-or-

Extended Properties

-or-

Initial File Name|N/A|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.

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.

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.

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.

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. **Note:** Remote server, HTTP, and UNC path names are not supported.

The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:

`"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"`

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.| |Authentication|N/A|The authentication method used for [Connecting to SQL Database By Using Azure Active Directory Authentication](https://azure.microsoft.com/documentation/articles/sql-database-aad-authentication/#7-connect-to-your-database-by-using-azure-active-directory-identities).

Valid values are:

Active Directory Integrated, Active Directory Password, Sql Password.| -|Column Encryption Setting|N/A|Enables or disables [Always Encrypted](https://msdn.microsoft.com/library/mt163865.aspx) functionality for the connection.| +|Column Encryption Setting|N/A|Enables or disables [Always Encrypted](/sql/relational-databases/security/encryption/always-encrypted-database-engine?view=sql-server-2017) functionality for the connection.| |Connect Timeout

-or-

Connection Timeout

-or-

Timeout|15|The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.

Valid values are greater than or equal to 0 and less than or equal to 2147483647.

When opening a connection to a Azure SQL Database, set the connection timeout to 30 seconds.| |Connection Lifetime

-or-

Load Balance Timeout|0|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.

A value of zero (0) causes pooled connections to have the maximum connection timeout.| |ConnectRetryCount|1|Controls the number of reconnection attempts after the client identifies an idle connection failure. Valid values are 0 to 255. The default is 1. 0 means do not attempt to reconnect (disable connection resiliency).

For additional information about idle connection resiliency, see [Technical Article – Idle Connection Resiliency](http://go.microsoft.com/fwlink/?LinkId=393996).| |ConnectRetryInterval|10|Specifies the time between each connection retry attempt (ConnectRetryCount). Valid values are 1 to 60 seconds (default=10), applied after the first reconnection attempt. When a broken connection is detected, the client immediately attempts to reconnect; this is the first reconnection attempt and only occurs if ConnectRetryCount is greater than 0. If the first reconnection attempt fails and ConnectRetryCount is greater than 1, the client waits ConnectRetryInterval to try the second and subsequent reconnection attempts.

For additional information about idle connection resiliency, see [Technical Article – Idle Connection Resiliency](http://go.microsoft.com/fwlink/?LinkId=393996).| -|Context Connection|'false'|`true` if an in-process connection to [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] should be made.| +|Context Connection|'false'|`true` if an in-process connection to SQL Server should be made.| |Current Language

-or-

Language|N/A|Sets the language used for database server warning or error messages.

The language name can be 128 characters or less.| -|Data Source

-or-

Server

-or-

Address

-or-

Addr

-or-

Network Address|N/A|The name or network address of the instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] to which to connect. The port number can be specified after the server name:

`server=tcp:servername, portnumber`

When specifying a local instance, always use (local). To force a protocol, add one of the following prefixes:

`np:(local), tcp:(local), lpc:(local)`

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], you can also connect to a LocalDB database as follows:

`server=(localdb)\\myInstance`

For more information about LocalDB, see [SqlClient Support for LocalDB](http://msdn.microsoft.com/library/cf796898-5575-46f2-ae6e-21e5aa8c4123).

**Data Source** must use the TCP format or the Named Pipes format.

TCP format is as follows:

- tcp:\\\
- tcp:\,\

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. This format is not applicable when connecting to Azure SQL Database. TCP is automatically selected for connections to Azure SQL Database when no protocol is specified.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

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.

The Named Pipes format is as follows:

- np:\\\\\pipe\\

The Named Pipes format MUST start with the prefix "np:" and is followed by a named pipe name.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

The pipe name is used to identify the database instance to which the .NET Framework application will be connected.

If the value of the **Network** key is specified, the prefixes "tcp:" and "np:" should not be specified. **Note:** You can force the use of TCP instead of shared memory, either by prefixing **tcp:** to the server name in the connection string, or by using **localhost**.| -|Encrypt|'false'|When `true`, [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [Connection String Syntax](http://msdn.microsoft.com/library/0977aeee-04d1-4cce-bbed-750c77fce06e).

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], when `TrustServerCertificate` is false and `Encrypt` is true, the server name (or IP address) in a [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [Accepted wildcards used by server certificates for server authentication](http://support.microsoft.com/kb/258858).| -|Enlist|'true'|`true` indicates that the [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] connection pooler automatically enlists the connection in the creation thread's current transaction context.| +|Data Source

-or-

Server

-or-

Address

-or-

Addr

-or-

Network Address|N/A|The name or network address of the instance of SQL Server to which to connect. The port number can be specified after the server name:

`server=tcp:servername, portnumber`

When specifying a local instance, always use (local). To force a protocol, add one of the following prefixes:

`np:(local), tcp:(local), lpc:(local)`

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], you can also connect to a LocalDB database as follows:

`server=(localdb)\\myInstance`

For more information about LocalDB, see [SqlClient Support for LocalDB](~/docs/framework/data/adonet/sql/sqlclient-support-for-localdb.md).

**Data Source** must use the TCP format or the Named Pipes format.

TCP format is as follows:

- tcp:\\\
- tcp:\,\

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. This format is not applicable when connecting to Azure SQL Database. TCP is automatically selected for connections to Azure SQL Database when no protocol is specified.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

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.

The Named Pipes format is as follows:

- np:\\\\\pipe\\

The Named Pipes format MUST start with the prefix "np:" and is followed by a named pipe name.

The host name MUST be specified in one of the following ways:

- NetBIOSName
- IPv4Address
- IPv6Address

The pipe name is used to identify the database instance to which the .NET Framework application will be connected.

If the value of the **Network** key is specified, the prefixes "tcp:" and "np:" should not be specified. **Note:** You can force the use of TCP instead of shared memory, either by prefixing **tcp:** to the server name in the connection string, or by using **localhost**.| +|Encrypt|'false'|When `true`, SQL Server 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 [Connection String Syntax](~/docs/framework/data/adonet/connection-string-syntax.md).

Beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)], when `TrustServerCertificate` is false and `Encrypt` is true, the server name (or IP address) in a SQL Server 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 [Accepted wildcards used by server certificates for server authentication](http://support.microsoft.com/kb/258858).| +|Enlist|'true'|`true` indicates that the SQL Server connection pooler automatically enlists the connection in the creation thread's current transaction context.| |Failover Partner|N/A|The name of the failover partner server where database mirroring is configured.

If the value of this key is "", then **Initial Catalog** must be present, and its value must not be "".

The server name can be 128 characters or less.

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.

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.| |Initial Catalog

-or-

Database|N/A|The name of the database.

The database name can be 128 characters or less.| -|Integrated Security

-or-

Trusted_Connection|'false'|When `false`, User ID and Password are specified in the connection. When `true`, the current Windows account credentials are used for authentication.

Recognized values are `true`, `false`, `yes`, `no`, and `sspi` (strongly recommended), which is equivalent to `true`.

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.

is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication (`Integrated Security=false`).| +|Integrated Security

-or-

Trusted_Connection|'false'|When `false`, User ID and Password are specified in the connection. When `true`, the current Windows account credentials are used for authentication.

Recognized values are `true`, `false`, `yes`, `no`, and `sspi` (strongly recommended), which is equivalent to `true`.

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.

is a more secure way to specify credentials for a connection that uses SQL Server Authentication (`Integrated Security=false`).| |Max Pool Size|100|The maximum number of connections that are allowed in the pool.

Valid values are greater than or equal to 1. Values that are less than **Min Pool Size** generate an error.| |Min Pool Size|0|The minimum number of connections that are allowed in the pool.

Valid values are greater than or equal to 0. Zero (0) in this field means no minimum connections are initially opened.

Values that are greater than **Max Pool Size** generate an error.| -|MultipleActiveResultSets|'false'|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.

Recognized values are `true` and `false`.

For more information, see [Multiple Active Result Sets (MARS)](http://msdn.microsoft.com//library/cfa084cz.aspx).| -|`MultiSubnetFailover`|FALSE|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:

`MultiSubnetFailover=True`

The default is `False`. For more information about SqlClient's support for Always On AGs, see [SqlClient Support for High Availability, Disaster Recovery](http://msdn.microsoft.com/library/61e0b396-09d7-4e13-9711-7dcbcbd103a0).| -|Network Library

-or-

Network

-or-

Net|N/A|The network library used to establish a connection to an instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)]. Supported values include:

dbnmpntw (Named Pipes)

dbmsrpcn (Multiprotocol, Windows RPC)

dbmsadsn (Apple Talk)

dbmsgnet (VIA)

dbmslpcn (Shared Memory)

dbmsspxn (IPX/SPX)

dbmssocn (TCP/IP)

Dbmsvinn (Banyan Vines)

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.

`Network Library=dbmssocn;Data Source=000.000.000.000,1433;`| -|Packet Size|8000|Size in bytes of the network packets used to communicate with an instance of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)].

The packet size can be greater than or equal to 512 and less than or equal to 32768.| -|Password

-or-

PWD|N/A|The password for the [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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. is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication.

The password must be 128 characters or less.| +|MultipleActiveResultSets|'false'|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.

Recognized values are `true` and `false`.

For more information, see [Multiple Active Result Sets (MARS)](~/docs/framework/data/adonet/sql/multiple-active-result-sets-mars.md).| +|`MultiSubnetFailover`|FALSE|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:

`MultiSubnetFailover=True`

The default is `False`. For more information about SqlClient's support for Always On AGs, see [SqlClient Support for High Availability, Disaster Recovery](~/docs/framework/data/adonet/sql/sqlclient-support-for-high-availability-disaster-recovery.md).| +|Network Library

-or-

Network

-or-

Net|N/A|The network library used to establish a connection to an instance of SQL Server. Supported values include:

dbnmpntw (Named Pipes)

dbmsrpcn (Multiprotocol, Windows RPC)

dbmsadsn (Apple Talk)

dbmsgnet (VIA)

dbmslpcn (Shared Memory)

dbmsspxn (IPX/SPX)

dbmssocn (TCP/IP)

Dbmsvinn (Banyan Vines)

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.

`Network Library=dbmssocn;Data Source=000.000.000.000,1433;`| +|Packet Size|8000|Size in bytes of the network packets used to communicate with an instance of SQL Server.

The packet size can be greater than or equal to 512 and less than or equal to 32768.| +|Password

-or-

PWD|N/A|The password for the SQL Server 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. is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

The password must be 128 characters or less.| |Persist Security Info

-or-

PersistSecurityInfo|'false'|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`.| |PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See [PoolBlockingPeriod Property](../Topic/PoolBlockingPeriod%20Property.md) for details.| |Pooling|'true'|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.

Connections are considered the same if they have the same connection string. Different connections have different connection strings.

The value of this key can be "true", "false", "yes", or "no".| |Replication|'false'|`true` if replication is supported using the connection.| |Transaction Binding|Implicit Unbind|Controls connection association with an enlisted `System.Transactions` transaction.

Possible values are:

`Transaction Binding=Implicit Unbind;`

`Transaction Binding=Explicit Unbind;`

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.

If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw .

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 [!INCLUDE[net_v40_long](~/includes/net-v40-long-md.md)], 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.| |TransparentNetworkIPResolution|See description.|When the value of this key is set to `true`, the application is required to retrieve all IP addresses for a particular DNS entry and attempt to connect with the first one in the list. If the connection is not established within 0.5 seconds, the application will try to connect to all others in parallel. When the first answers, the application will establish the connection with the respondent IP address.

If the `MultiSubnetFailover` key is set to `true`, `TransparentNetworkIPResolution` is ignored.

If the `Failover Partner` key is set, `TransparentNetworkIPResolution` is ignored.

The value of this key must be `true`, `false`, `yes`, or `no`.

A value of `yes` is treated the same as a value of `true`.

A value of `no` is treated the same as a value of `false`.

The default values are as follows:

  • `false` when:

    • Connecting to Azure SQL Database where the data source ends with:

      • .database.chinacloudapi.cn
      • .database.usgovcloudapi.net
      • .database.cloudapi.de
      • .database.windows.net
    • `Authentication` is 'Active Directory Password' or 'Active Directory Integrated'
  • `true` in all other cases.
| -|TrustServerCertificate|'false'|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 [Connection String Syntax](http://msdn.microsoft.com/library/0977aeee-04d1-4cce-bbed-750c77fce06e).| -|Type System Version|N/A|A string value that indicates the type system the application expects. The functionality available to a client application is dependent on the version of [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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 [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] is used. **Note:** The type system version cannot be set for common language runtime (CLR) code executing in-process in SQL Server. For more information, see [SQL Server Common Language Runtime Integration](http://msdn.microsoft.com/library/c7a324c4-160d-44c2-b593-641af06eca61).

Possible values are:

`Type System Version=SQL Server 2012;`

`Type System Version=SQL Server 2008;`

`Type System Version=SQL Server 2005;`

`Type System Version=Latest;`

`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.

`Latest` is obsolete and should not be used. `Latest` is equivalent to `Type System Version=SQL Server 2008;`.| -|User ID

-or-

UID

-or-|N/A|The [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] 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. is a more secure way to specify credentials for a connection that uses [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Authentication.

The user ID must be 128 characters or less.| -|User Instance|'false'|A value that indicates whether to redirect the connection from the default [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)] Express instance to a runtime-initiated instance running under the account of the caller.| -|Workstation ID

-or-

WSID|The local computer name|The name of the workstation connecting to [!INCLUDE[ssNoVersion](~/includes/ssnoversion-md.md)].

The ID must be 128 characters or less.| +|TrustServerCertificate|'false'|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 [Connection String Syntax](~/docs/framework/data/adonet/connection-string-syntax.md).| +|Type System Version|N/A|A string value that indicates the type system the application expects. The functionality available to a client application is dependent on the version of SQL Server 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 SQL Server is used. **Note:** The type system version cannot be set for common language runtime (CLR) code executing in-process in SQL Server. For more information, see [SQL Server Common Language Runtime Integration](~/docs/framework/data/adonet/sql/sql-server-common-language-runtime-integration.md).

Possible values are:

`Type System Version=SQL Server 2012;`

`Type System Version=SQL Server 2008;`

`Type System Version=SQL Server 2005;`

`Type System Version=Latest;`

`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.

`Latest` is obsolete and should not be used. `Latest` is equivalent to `Type System Version=SQL Server 2008;`.| +|User ID

-or-

UID

-or-|N/A|The SQL Server 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. is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

The user ID must be 128 characters or less.| +|User Instance|'false'|A value that indicates whether to redirect the connection from the default SQL Server Express instance to a runtime-initiated instance running under the account of the caller.| +|Workstation ID

-or-

WSID|The local computer name|The name of the workstation connecting to SQL Server.

The ID must be 128 characters or less.| - The following list contains the valid names for connection pooling values within the . For more information, see [SQL Server Connection Pooling (ADO.NET)](http://msdn.microsoft.com/library/7e51d44e-7c4e-4040-9332-f0190fe36f07). + The following list contains the valid names for connection pooling values within the . For more information, see [SQL Server Connection Pooling (ADO.NET)](~/docs/framework/data/adonet/sql-server-connection-pooling.md). - Connection Lifetime (or Load Balance Timeout) @@ -1193,10 +1193,10 @@ End Module ]]> An invalid connection string argument has been supplied, or a required connection string argument has not been supplied. - Connection Strings in ADO.NET - SQL Server Connection Pooling (ADO.NET) - Connecting to a Data Source in ADO.NET - ADO.NET Managed Providers and DataSet Developer Center + Connection Strings in ADO.NET + SQL Server Connection Pooling (ADO.NET) + Connecting to a Data Source in ADO.NET + ADO.NET Managed Providers and DataSet Developer Center @@ -1726,7 +1726,7 @@ End Module - Returns schema information for the data source of this . For more information about scheme, see [SQL Server Schema Collections](http://msdn.microsoft.com/library/ms254969.aspx). + Returns schema information for the data source of this . For more information about scheme, see [SQL Server Schema Collections](~/docs/framework/data/adonet/sql-server-schema-collections.md). A that contains schema information. To be added. @@ -2717,4 +2717,4 @@ class Program { -
\ No newline at end of file +
From 645d9378b9cd705a933b15a3d3a3a69577c8d444 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Thu, 19 Jul 2018 23:43:50 -0700 Subject: [PATCH 5/8] fixes --- xml/System.Data.SqlClient/SqlConnection.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xml/System.Data.SqlClient/SqlConnection.xml b/xml/System.Data.SqlClient/SqlConnection.xml index 27c5b495b98..a7a6223c658 100644 --- a/xml/System.Data.SqlClient/SqlConnection.xml +++ b/xml/System.Data.SqlClient/SqlConnection.xml @@ -1125,7 +1125,7 @@ End Module |Application Name|N/A|The name of the application, or '.NET SQLClient Data Provider' if no application name is provided.

An application name can be 128 characters or less.| |`ApplicationIntent`|`ReadWrite`|Declares the application workload type when connecting to a server. Possible values are `ReadOnly` and `ReadWrite`. For example:

`ApplicationIntent=ReadOnly`

For more information about SqlClient support for Always On Availability Groups, see [SqlClient Support for High Availability, Disaster Recovery](~/docs/framework/data/adonet/sql/sqlclient-support-for-high-availability-disaster-recovery.md).| |Asynchronous Processing

-or-

Async|'false'|When `true`, enables asynchronous operation support. Recognized values are `true`, `false`, `yes`, and `no`.

This property is ignored beginning in [!INCLUDE[net_v45](~/includes/net-v45-md.md)]. For more information about SqlClient support for asynchronous programming, see [Asynchronous Programming](~/docs/framework/data/adonet/asynchronous-programming.md).| -|AttachDBFilename

-or-

Extended Properties

-or-

Initial File Name|N/A|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.

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.

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.

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.

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. **Note:** Remote server, HTTP, and UNC path names are not supported.

The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:

`"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"`

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.| +|AttachDBFilename

-or-

Extended Properties

-or-

Initial File Name|N/A|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.

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.

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.

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.

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. **Note:** Remote server, HTTP, and UNC path names are not supported.

The database name must be specified with the keyword 'database' (or one of its aliases) as in the following:

"AttachDbFileName=|DataDirectory|\data\YourDB.mdf;integrated security=true;database=YourDatabase"

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.| |Authentication|N/A|The authentication method used for [Connecting to SQL Database By Using Azure Active Directory Authentication](https://azure.microsoft.com/documentation/articles/sql-database-aad-authentication/#7-connect-to-your-database-by-using-azure-active-directory-identities).

Valid values are:

Active Directory Integrated, Active Directory Password, Sql Password.| |Column Encryption Setting|N/A|Enables or disables [Always Encrypted](/sql/relational-databases/security/encryption/always-encrypted-database-engine?view=sql-server-2017) functionality for the connection.| |Connect Timeout

-or-

Connection Timeout

-or-

Timeout|15|The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error.

Valid values are greater than or equal to 0 and less than or equal to 2147483647.

When opening a connection to a Azure SQL Database, set the connection timeout to 30 seconds.| @@ -1148,7 +1148,7 @@ End Module |Packet Size|8000|Size in bytes of the network packets used to communicate with an instance of SQL Server.

The packet size can be greater than or equal to 512 and less than or equal to 32768.| |Password

-or-

PWD|N/A|The password for the SQL Server 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. is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

The password must be 128 characters or less.| |Persist Security Info

-or-

PersistSecurityInfo|'false'|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`.| -|PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See [PoolBlockingPeriod Property](../Topic/PoolBlockingPeriod%20Property.md) for details.| +|PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See property for details.| |Pooling|'true'|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.

Connections are considered the same if they have the same connection string. Different connections have different connection strings.

The value of this key can be "true", "false", "yes", or "no".| |Replication|'false'|`true` if replication is supported using the connection.| |Transaction Binding|Implicit Unbind|Controls connection association with an enlisted `System.Transactions` transaction.

Possible values are:

`Transaction Binding=Implicit Unbind;`

`Transaction Binding=Explicit Unbind;`

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.

If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw .

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 [!INCLUDE[net_v40_long](~/includes/net-v40-long-md.md)], 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.| From d9d4ca5763179d8c6c7e5ca4f348f4d794ed7d12 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Fri, 20 Jul 2018 00:24:27 -0700 Subject: [PATCH 6/8] updates --- xml/System.Xml.Xsl/XslTransform.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/xml/System.Xml.Xsl/XslTransform.xml b/xml/System.Xml.Xsl/XslTransform.xml index 36c53383782..88998ebec1f 100644 --- a/xml/System.Xml.Xsl/XslTransform.xml +++ b/xml/System.Xml.Xsl/XslTransform.xml @@ -789,8 +789,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);`| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL); xslt.Load(xslReader,resolver,evidence);`| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL);
 xslt.Load(xslReader,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| @@ -866,8 +866,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);`| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); xslt.Load(style sheet,resolver,evidence);`| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL);
 xslt.Load(style sheet,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| @@ -937,8 +937,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

`XsltTransform xslt = new XslTransform(); xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);`| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

`XsltTransform xslt = new XslTransform(); Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); xslt.Load(xslNav,resolver,evidence);`| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL);
 xslt.Load(xslNav,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the `Evidence` class.| @@ -2637,4 +2637,4 @@ Root node is book. - \ No newline at end of file + From 751e4908c59fc09e6600971743246045fdf8fe90 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Fri, 20 Jul 2018 08:43:53 -0700 Subject: [PATCH 7/8] fix broken link --- xml/System.Data.SqlClient/SqlConnection.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xml/System.Data.SqlClient/SqlConnection.xml b/xml/System.Data.SqlClient/SqlConnection.xml index a7a6223c658..0afe40f7d39 100644 --- a/xml/System.Data.SqlClient/SqlConnection.xml +++ b/xml/System.Data.SqlClient/SqlConnection.xml @@ -1148,7 +1148,7 @@ End Module |Packet Size|8000|Size in bytes of the network packets used to communicate with an instance of SQL Server.

The packet size can be greater than or equal to 512 and less than or equal to 32768.| |Password

-or-

PWD|N/A|The password for the SQL Server 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. is a more secure way to specify credentials for a connection that uses SQL Server Authentication.

The password must be 128 characters or less.| |Persist Security Info

-or-

PersistSecurityInfo|'false'|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`.| -|PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See property for details.| +|PoolBlockingPeriod|Auto|Sets the blocking period behavior for a connection pool. See property for details.| |Pooling|'true'|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.

Connections are considered the same if they have the same connection string. Different connections have different connection strings.

The value of this key can be "true", "false", "yes", or "no".| |Replication|'false'|`true` if replication is supported using the connection.| |Transaction Binding|Implicit Unbind|Controls connection association with an enlisted `System.Transactions` transaction.

Possible values are:

`Transaction Binding=Implicit Unbind;`

`Transaction Binding=Explicit Unbind;`

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.

If the system ends the transaction (in the scope of a using block) before the last command completes, it will throw .

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 [!INCLUDE[net_v40_long](~/includes/net-v40-long-md.md)], 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.| From 0a38d489df81732801763bf4314e8bea7b70cf31 Mon Sep 17 00:00:00 2001 From: Maira Wenzel Date: Fri, 20 Jul 2018 14:55:15 -0700 Subject: [PATCH 8/8] fix code formatting --- xml/System.Xml.Xsl/XslTransform.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/xml/System.Xml.Xsl/XslTransform.xml b/xml/System.Xml.Xsl/XslTransform.xml index 88998ebec1f..a327ef436a0 100644 --- a/xml/System.Xml.Xsl/XslTransform.xml +++ b/xml/System.Xml.Xsl/XslTransform.xml @@ -789,8 +789,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);
| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL);
 xslt.Load(xslReader,resolver,evidence);
| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(xslReader, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(stylesheetURL); 
xslt.Load(xslReader,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| @@ -866,8 +866,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);
| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL);
 xslt.Load(style sheet,resolver,evidence);
| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(style sheet, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform(); 
Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); 
xslt.Load(style sheet,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the class.| @@ -937,8 +937,8 @@ |Scenario|Type of evidence to provide| |--------------|---------------------------------| -|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform();
 xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);
| -|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform();
 Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL);
 xslt.Load(xslNav,resolver,evidence);
| +|The XSLT style sheet is self-contained or comes from a code base that you trust.|Use the evidence from your assembly.

XsltTransform xslt = new XslTransform(); 
xslt.Load(xslNav, resolver, this.GetType().Assembly.Evidence);
| +|The XSLT style sheet comes from an outside source. The origin of the source is known, and there is a verifiable URL.|Create evidence using the URL.

XsltTransform xslt = new XslTransform(); 
Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(style sheetURL); 
xslt.Load(xslNav,resolver,evidence);
| |The XSLT style sheet comes from an outside source. The origin of the source is not known.|Set evidence to `null`. Script blocks are not processed, the XSLT `document()` function is not supported, and privileged extension objects are disallowed.

Additionally, you can also set the `resolver` parameter to `null`. This ensures that `xsl:import` and `xsl:include` elements are not processed.| |The XSLT style sheet comes from an outside source. The origin of the source is not known, but you require script support.|Request evidence from the caller. The API of the caller must provide a way to provide evidence, typically the `Evidence` class.|