5 Appendix A: Product Behavior
The information in this specification is applicable to the following Microsoft products or supplemental software. References to product versions include updates to those products.
This document specifies version-specific details in the Microsoft .NET Framework. For information about which versions of .NET Framework are available in each released Windows product or as supplemental software, see [MS-NETOD] section 4.
Microsoft .NET Framework 1.0
Microsoft .NET Framework 1.1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 3.5
Microsoft .NET Framework 4.0
Microsoft .NET Framework 4.5
Microsoft .NET Framework 4.6
Microsoft .NET Framework 4.7
Microsoft .NET Framework 4.8
2007 Microsoft Office system
Microsoft Office 2010 system
Microsoft Office 2013 system
Microsoft Office 2016
Microsoft Office 2019
Microsoft Office 2021
Microsoft SQL Server 2000
Microsoft SQL Server 2005
Microsoft SQL Server 2008
Microsoft SQL Server 2008 Express
Microsoft SQL Server 2008 R2
Microsoft SQL Server 2012
Microsoft SQL Server 2014
Microsoft SQL Server 2016
Microsoft SQL Server 2017
Microsoft SQL Server 2019
Microsoft SQL Server 2022
Windows Vista operating system
Windows Server 2008 operating system
Windows 7 operating system
Windows Server 2008 R2 operating system
Windows 8 operating system
Windows Server 2012 operating system
Windows 8.1 operating system
Windows Server 2012 R2 operating system
Windows 10 operating system
Windows Server 2016 operating system
Windows Server operating system
Windows Server 2019 operating system
Windows Server 2022 operating system
Windows 11 operating system
Exceptions, if any, are noted in this section. If an update version, service pack or Knowledge Base (KB) number appears with a product name, the behavior changed in that update. The new behavior also applies to subsequent updates unless otherwise specified. If a product edition appears with the product version, behavior is different in that product edition.
Unless otherwise specified, any statement of optional behavior in this specification that is prescribed using the terms "SHOULD" or "SHOULD NOT" implies product behavior in accordance with the SHOULD or SHOULD NOT prescription. Unless otherwise specified, the term "MAY" implies that the product does not follow the prescription.
<1> Section 2.2: The Asynchronous Processing key is ignored in the .NET Framework 4.5, .NET Framework 4.6, .NET Framework 4.7, and .NET Framework 4.8.
<2> Section 2.2: A file path that conforms to the format specified in [MSDN-FILE].
<3> Section 2.2: The "Active Directory Password" value is not supported by Microsoft SQL Server. This value was introduced in the .NET Framework 4.6.1 and is not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, and .NET Framework 4.6.
<4> Section 2.2: The "Active Directory Integrated" value was introduced in SQL Server 2016 and is not supported by SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 Express, SQL Server 2008 R2, SQL Server 2012, and SQL Server 2014. This value was also introduced in the .NET Framework 4.6.1 and is not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, and .NET Framework 4.6.
<5> Section 2.2: In Microsoft implementations, the user domain account is a Microsoft Windows user domain account. The SQL Server configuration determines whether SqlClient authenticates to the database directly by using either Kerberos or NTLM, or whether SqlClient initially contacts an STS to obtain an access token that subsequently is used to connect to the database.
<6> Section 2.2: The "Active Directory Interactive" value is not supported by SQL Server. This value was introduced in the .NET Framework 4.7.2 and is not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, .NET Framework 4.6, .NET Framework 4.7, and .NET Framework 4.7.1.
<7> Section 2.2: The Column Encryption Setting key is not supported by SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 Express, SQL Server 2008 R2, SQL Server 2012, and SQL Server 2014. This key is also not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, and .NET Framework 4.5.
<8> Section 2.2: The value of the Data Source key can be either the name of a server on the network or the name of a SQL Server Configuration Manager advanced server entry. To specify a named instance of SQL Server, the server name ServerName\InstanceName can be used. Otherwise, if InstanceName is omitted, SqlClient connects to the default server. "(Local)" is also a valid name representing a copy of SQL Server that is running on the same computer. SQL Server 2000 does not support multiple instances of SQL Server running on the same computer.
<9> Section 2.2: In Microsoft implementations, if the value of the Network key is specified as "DBNETLIB," the protocol prefixes "tcp:" and "np:" can still be used.
<10> Section 2.2: The Enclave Attestation Url key is not supported by SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 R2, SQL Server 2012, SQL Server 2014, SQL Server 2016, and SQL Server 2017. This key was introduced in the .NET Framework 4.7.2 and is not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, .NET Framework 4.6, .NET Framework 4.7, and .NET Framework 4.7.1.
<11> Section 2.2: Even if the Encrypt key is set to "false", SqlClient looks at [Software\Microsoft\MSSQLServer\Client\SuperSocketNetLib], and if the value of Encrypt is set to "true", the encryption is considered enabled.
<12> Section 2.2: The default value is "true" if the platform is WIN32NT. Otherwise, the default value is "false".
<13> Section 2.2: The Failover Partner key is not supported by the .NET Framework 1.0 or .NET Framework 1.1.
<14> Section 2.2: In Microsoft implementations, NTLM authentication [MSDN-NTLM] is used when the value of the Integrated Security key is "yes". In addition, depending on the server configuration, NTLM authentication might be used if the value of the Authentication key is "Active Directory Integrated".
<15> Section 2.2: The MultipleActiveResultSets key is not supported by the .NET Framework 1.0 or .NET Framework 1.1.
<16> Section 2.2: Of the SQL Server products that are applicable to this specification, with the exception of SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 Express, and SQL Server 2008 R2, when the value of the MultiSubnetFailover key is set to "true", SQL Server enables fast failover for all AlwaysOn availability groups and failover cluster instances.
<17> Section 2.2: In Microsoft implementations, the behaviors of the values for the various components are described in the following table.
Value |
Meaning |
---|---|
DBNMPNTW |
The component DBNMPNTW implements the Named Pipes protocol [MSDN-NP]. |
DBMSSOCN |
The component DBMSSOCN implements the TCP/IP protocol. |
DBMSSPXN |
The component DBMSSPXN implements the NWLink IPX/SPX protocol. |
DBMSRPCN |
The component DBMSRPCN implements the Multiprotocol protocol. |
DBMSVINN |
The component DBMSVINN implements the Banyan Vines protocol. |
DBMSADSN |
The component DBMSADSN implements the ADSP protocol. |
DBMSSHRN |
The component DBMSSHRN implements the Shared Memory protocol. |
DBMSLPCN |
The component DBMSLPCN implements the Shared Memory protocol. |
DBNETLIB |
The default search order of network component can be used. |
If the value specified is not listed above, or if the Network key is not specified, the default search order of network component can be used. For more information about the default search order of network component, see [MSKB-328383].
<18> Section 2.2: The PoolBlockingPeriod key was introduced in the .NET Framework 4.6.2 and is not supported by the .NET Framework 1.0, .NET Framework 1.1, .NET Framework 2.0, .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, .NET Framework 4.6, and .NET Framework 4.6.1.
<19> Section 2.2: In a Microsoft implementation, the value is one of the following:
Type System Version=SQL Server 2000
The following conversions are performed when connecting to an instance of SQL Server 2000:
XML to NTEXT
UDT to VARBINARY
VARCHAR(MAX) to TEXT
NVARCHAR(MAX) to NEXT
Type System Version=SQL Server 2005
Type System Version=SQL Server 2008 (Applicable to only the Microsoft .NET Framework 2.0 Service Pack 1 (SP1), .NET Framework 3.5, .NET Framework 4.0, .NET Framework 4.5, .NET Framework 4.6, .NET Framework 4.7, and .NET Framework 4.8.)
Type System Version=SQL Server 2012 (Applicable to only the .NET Framework 4.5, .NET Framework 4.6, .NET Framework 4.7, and .NET Framework 4.8.)
Type System Version=Latest (The value "Latest" is equivalent to "Type System Version=SQL Server 2008". "Latest" should not be used.)
Because "Latest" defaults to SQL Server 2008, the applications that target subsequent SQL Server versions require that users provide the correct version number for the type compatibility that the .NET Framework application expects. For example, an application that runs against SQL Server 2008 and that targets SQL Server 2016 uses "Type System Version=SQL Server 2008".
<20> Section 2.2: The value for the User Instance key indicates whether to redirect the connection from the default instance of SQL Server 2008 Express to another connection that is running in the same context of the user.
<21> Section 4.1: Connection strings are stored "as is" in memory or in any other persistent media. It is advised that the application safeguard any credential information.