Skip to content
Open
Show file tree
Hide file tree
Changes from 36 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
01cfa53
Add pre-processor constants for target OS
benrr101 Nov 20, 2025
1defe9f
Add #if _WINDOWS to the Interop/Windows files
benrr101 Nov 21, 2025
725928a
Split out the netfx methods and junk from AdapterUtil
benrr101 Nov 21, 2025
5e5064e
Split netcore junk from AdapterUtil into a separate file. Oh wait, tw…
benrr101 Nov 21, 2025
f5e7ac9
Merge the unix and windows version of AdapterUtil back into the main …
benrr101 Nov 21, 2025
0639587
Consolidate windows/unix versions of SqlDataSourceEnumerator into one…
benrr101 Nov 19, 2025
cd0158e
Merging DbConnectionPoolIdentity os-specific versions into the generi…
benrr101 Nov 19, 2025
61fa101
Add os #if wrappers to LocalDbApi
benrr101 Nov 19, 2025
9908a50
Apply #if wrappers to LocalDB files
benrr101 Nov 19, 2025
a2043d3
Merge the SslOverTdsStream files together
benrr101 Nov 19, 2025
5cd3bd2
Split PacketHandle.Windows into PacketHandle.netcore.windows and Pack…
benrr101 Nov 20, 2025
8726ed6
Wrap PacketHandle.netcore.unix in _UNIX
benrr101 Nov 20, 2025
dc96b5e
Split Sessionhandle.Windows into SessionHandle.netcore.Windows and Se…
benrr101 Nov 19, 2025
02fbdef
Wrap SessionHandle.netcore.unix in _UNIX flag
benrr101 Nov 19, 2025
0c765f8
Wrap SqlColumnEncryptionCngProvider in _UNIX and _WINDOWS
benrr101 Nov 20, 2025
d19082e
Wrap SqlColumnEncryptionCspProvider in _UNIX and _WINDOWS
benrr101 Nov 20, 2025
e44a384
Wrap TdsParserSafeHandles.windows in _WINDOWS
benrr101 Nov 20, 2025
8e3d683
Add _UNIX wrapper to TdsParserStateObjectFactory.unix.cs
benrr101 Nov 20, 2025
6a66804
Wrap TdsParseStateObject[Managed.netcore|Native.windows] in their res…
benrr101 Nov 20, 2025
c308c11
Wrap SqlFileStream files in appropriate #if
benrr101 Nov 20, 2025
047dfc4
Remove ILLink.Substitutions.Unix.xml and embed it in LocalAppContextS…
benrr101 Nov 20, 2025
e296c95
Conditionally include ILLink.Substitutions.xml for windows *sigh*
benrr101 Nov 20, 2025
9ad3a35
Make CodeAnalysis be a netfx-only file, remove unused attributes, and…
benrr101 Nov 20, 2025
5674ac0
Rename SqlBatchCommand.Net8OrGreater.cs to SqlBatchCommand.netcore.cs
benrr101 Nov 20, 2025
cffa6d5
Wrap SqlDataSourceEnumeratorNativeHelper.cs in windows and rename to …
benrr101 Nov 20, 2025
811406f
Bring in all files for the netcore project, re-sort them, make sure l…
benrr101 Nov 21, 2025
42cecd8
Netcore project embedded resources
benrr101 Nov 24, 2025
a907dc9
Get rid of TargetsWindows/TargetsUnix
benrr101 Nov 25, 2025
cc0a6ee
Bring in all files for the netcore project, re-sort them, make sure l…
benrr101 Nov 26, 2025
166ff48
Resource files in netfx project
benrr101 Nov 26, 2025
5b34019
Sort a few of the netfx properties to match netcore :shrug:
benrr101 Nov 26, 2025
2576df7
First round of PR comments
benrr101 Nov 26, 2025
deda198
Fix file inclusion
benrr101 Nov 26, 2025
6682db1
Fix "unreachable code detected" issue in unix build
benrr101 Nov 26, 2025
615c30c
Merge branch 'main' into dev/russellben/os-flags
benrr101 Dec 1, 2025
d8a4c47
Addressing comments from @paulmedynski
benrr101 Dec 1, 2025
2e2de79
Add OS constants to test common project, wrap app context switches th…
Dec 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions build.proj
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,13 @@
<MSBuild Projects="@(NetCoreDriver)" Properties="$(CI);$(ProjectProperties);Platform=AnyCPU;OSGroup=Windows_NT;" RemoveProperties="TargetsWindows;TargetsUnix;" Condition="'$(IsEnabledWindows)' == 'true'" />
<MSBuild Projects="@(NetCoreDriver)" Properties="$(CI);$(ProjectProperties);Platform=AnyCPU;OSGroup=AnyOS;" RemoveProperties="TargetsWindows;TargetsUnix;" />
</Target>

<Target Name="BuildNetCoreUnix" DependsOnTargets="RestoreNetCore">
<MSBuild Projects="@(NetCoreDriver)"
Properties="$(CI);$(ProjectProperties);Platform=AnyCPU;OSGroup=Unix;"
RemoveProperties="TargetsWindows;TargetsUnix;" />
</Target>

<!-- Build .NET Standard target DLLs for Lib folder from here.
This target enables BuildForLib for the NetCore ref project. -->
<Target Name="BuildNetStandard">
Expand Down Expand Up @@ -327,7 +334,7 @@
<TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand>
</PropertyGroup>
<Message Text=">>> Running Manual test for Windows via command: $(TestCommand)" />
<Exec ConsoleToMsBuild="true" Command="$(TestCommand)" />

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (win11_Azure_Sql net9_0_AnyCPU_NativeSNI_2)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net9.0 -p:ReferenceType=Project -p:TestSet=2 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-2" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_Sql net8_0_AnyCPU_NativeSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net8.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_ARM64_Sql net8_0_AnyCPU_NativeSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net8.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_ARM64_Sql net8_0_AnyCPU_ManagedSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net8.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (win11_Azure_Sql net8_0_AnyCPU_NativeSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net8.0 -p:ReferenceType=Project -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Azure_ARM64_Sql net9_0_AnyCPU_ManagedSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net9.0 -p:ReferenceType=Project -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_Sql net8_0_AnyCPU_ManagedSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net8.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (win11_Azure_Sql net9_0_AnyCPU_NativeSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net9.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (win11_Azure_Sql net462_AnyCPU_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetfxVersion=net462 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetfx --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetfxtests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetfx-3" " exited with code 1.

Check failure on line 337 in build.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (win11_Azure_Sql net9_0_AnyCPU_ManagedSNI_3)

build.proj#L337

build.proj(337,5): Error MSB3073: The command " dotnet test "src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj" --no-build -v n -p:Configuration=Debug -p:TargetnetcoreVersion=net9.0 -p:ReferenceType=Package -p:TestSet=3 -p:TestTargetOS=Windowsnetcoreapp --collect "Code coverage" --results-directory TestResults --filter "category!=nonnetcoreapptests&category!=failing&category!=nonwindowstests" --logger:"trx;LogFilePrefix=Manual-Windowsnetcoreapp-3" " exited with code 1.
</Target>

<!-- Run all Manual tests applicable to Unix. -->
Expand Down

Large diffs are not rendered by default.

440 changes: 230 additions & 210 deletions src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

using Microsoft.Win32.SafeHandles;
#if NET && _WINDOWS

#if NET
using Microsoft.Win32.SafeHandles;

namespace Interop.Windows.Handles
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Kernel32
{
internal class FileTypes
Expand All @@ -12,3 +14,5 @@ internal class FileTypes
internal const int FILE_TYPE_PIPE = 0x0003;
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;

namespace Interop.Windows.Kernel32
Expand Down Expand Up @@ -31,3 +33,5 @@ public enum IoControlCodeAccess
FILE_WRITE_DATA = 0x02
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Kernel32
{
/// <summary>
Expand Down Expand Up @@ -35,3 +37,5 @@ public enum IoControlTransferType
METHOD_NEITHER
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
Expand Down Expand Up @@ -92,3 +94,5 @@ internal static extern int GetFullPathName(
internal static extern bool SetThreadErrorMode(uint dwNewMode, out uint lpOldMode);
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.NtDll
{
/// <summary>
Expand Down Expand Up @@ -54,3 +56,5 @@ internal enum CreateDisposition : uint
FILE_OVERWRITE_IF = 5
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -196,3 +198,5 @@ internal enum CreateOptions : uint
// FILE_OPEN_FOR_FREE_SPACE_QUERY = 0x00800000
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -188,3 +190,5 @@ internal enum DesiredAccess : uint
FILE_GENERIC_EXECUTE = 0x20000000 // GENERIC_EXECUTE
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System.Runtime.InteropServices;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -35,3 +37,5 @@ internal struct FileFullEaInformation

}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.NtDll
{
/// <summary>
Expand Down Expand Up @@ -39,3 +41,5 @@ internal enum ImpersonationLevel
SecurityDelegation = 3,
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.Runtime.InteropServices;

Expand Down Expand Up @@ -42,3 +44,5 @@ public struct IoStatus
}
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.IO;
using System.Runtime.InteropServices;
Expand Down Expand Up @@ -118,3 +120,5 @@ private static extern unsafe int NtCreateFile(
uint EaLength);
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -52,3 +54,5 @@ internal enum ObjectAttributeFlags : uint
// OBJ_VALID_ATTRIBUTES = 0x000001F2
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -58,3 +60,5 @@ public ObjectAttributes(
}
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System.Runtime.InteropServices;

namespace Interop.Windows.NtDll
Expand Down Expand Up @@ -48,3 +50,5 @@ public SecurityQualityOfService(
public bool IsEffectiveOnly { get; set; }
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System.Runtime.InteropServices;

namespace Interop.Windows.Sni
Expand All @@ -23,3 +25,5 @@ internal struct AuthProviderInfo
public string serverCertFileName;
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.Runtime.InteropServices;

Expand All @@ -16,3 +18,5 @@ internal struct ConsumerInfo
internal IntPtr key;
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Sni
{
internal enum ConsumerNumber
Expand All @@ -12,3 +14,5 @@ internal enum ConsumerNumber
SNI_Consumer_Invalid,
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.Runtime.InteropServices;

Expand All @@ -12,3 +14,5 @@ namespace Interop.Windows.Sni

internal delegate IntPtr SqlClientCertificateDelegate(IntPtr pCallbackContext);
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System;
using System.Runtime.InteropServices;
using System.Text;
Expand Down Expand Up @@ -99,3 +101,5 @@ unsafe uint SniSecGenClientContextWrapper(
uint SniWriteSyncOverAsync(SNIHandle pConn, SNIPacket pPacket);
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Sni
{
internal enum IoType
Expand All @@ -10,3 +12,5 @@ internal enum IoType
WRITE,
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Sni
{
internal enum Prefix
Expand All @@ -14,3 +16,5 @@ internal enum Prefix
INVALID_PREFIX,
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Sni
{
internal enum Provider
Expand All @@ -24,3 +26,5 @@ internal enum Provider
INVALID_PROV,
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

namespace Interop.Windows.Sni
{
internal enum QueryType
Expand Down Expand Up @@ -47,3 +49,5 @@ internal enum QueryType
#endif
}
}

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

#if _WINDOWS

using System.Runtime.InteropServices;
using Microsoft.Data.SqlClient;

Expand Down Expand Up @@ -34,3 +36,5 @@ internal unsafe struct SniClientConsumerInfo
public SniDnsCacheInfo DNSCacheInfo;
}
}

#endif
Loading
Loading