Skip to content

Commit a0f5c7a

Browse files
committed
Merge remote-tracking branch 'origin/main' into auth-params
2 parents e9c04ad + b64db0e commit a0f5c7a

File tree

254 files changed

+12797
-25129
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

254 files changed

+12797
-25129
lines changed

.config/tsaoptions.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"repositoryName": "SqlClient",
88
"codebaseName": "SqlClient",
99
"allTools": true,
10-
"template": "MSDATA_RevolutionR",
10+
"template": "MSDATA_RevolutionR_Overloaded0",
1111
"language": "csharp",
1212
"includePathPatterns": "src/Microsoft.Data.SqlClient/*, src/Microsoft.SqlServer.Server/*, tools/*",
1313
"excludePathPatterns": "src/Microsoft.Data.SqlClient/tests/*"

BUILDGUIDE.md

Lines changed: 110 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -339,14 +339,118 @@ dotnet test <test_properties...> --collect:"XPlat Code Coverage"
339339

340340
## Run Performance Tests
341341

342-
### Running Performance test project directly
342+
The performance tests live here:
343+
`src\Microsoft.Data.SqlClient\tests\PerformanceTests\`
343344

344-
Project location from Root: `src\Microsoft.Data.SqlClient\tests\PerformanceTests\Microsoft.Data.SqlClient.PerformanceTests.csproj`
345-
Configure `runnerconfig.json` file with connection string and preferred settings to run Benchmark Jobs.
345+
They can be run from the command line by following the instructions below.
346+
347+
Launch a shell and change into the project directory:
348+
349+
PowerShell:
350+
351+
```pwsh
352+
> cd src\Microsoft.Data.SqlClient\tests\PerformanceTests
353+
```
354+
355+
Bash:
356+
357+
```bash
358+
$ cd src/Microsoft.Data.SqlClient/tests/PerformanceTests
359+
```
360+
361+
### Create Database
362+
363+
Create an empty database for the benchmarks to use. This example assumes
364+
a local SQL server instance using SQL authentication:
346365

347366
```bash
348-
cd src\Microsoft.Data.SqlClient\tests\PerformanceTests
349-
dotnet run -c Release -f net8.0
367+
$ sqlcmd -S localhost -U sa -P password
368+
1> create database [sqlclient-perf-db]
369+
2> go
370+
1> quit
371+
```
372+
373+
The default `runnerconfig.json` expects a database named `sqlclient-perf-db`,
374+
but you may change the config to use any existing database. All tables in
375+
the database will be dropped when running the benchmarks.
376+
377+
### Configure Runner
378+
379+
Configure the benchmarks by editing the `runnerconfig.json` file directly in the
380+
`PerformanceTests` directory with an appropriate connection string and benchmark
381+
settings:
382+
383+
```json
384+
{
385+
"ConnectionString": "Server=tcp:localhost; Integrated Security=true; Initial Catalog=sqlclient-perf-db;",
386+
"UseManagedSniOnWindows": false,
387+
"Benchmarks":
388+
{
389+
"SqlConnectionRunnerConfig":
390+
{
391+
"Enabled": true,
392+
"LaunchCount": 1,
393+
"IterationCount": 50,
394+
"InvocationCount":30,
395+
"WarmupCount": 5,
396+
"RowCount": 0
397+
},
398+
...
399+
}
400+
}
350401
```
351402

352-
_Only "**Release** Configuration" applies to Performance Tests_
403+
Individual benchmarks may be enabled or disabled, and each has several
404+
benchmarking options for fine tuning.
405+
406+
After making edits to `runnerconfig.json` you must perform a build which will
407+
copy the file into the `artifacts` directory alongside the benchmark DLL. By
408+
default, the benchmarks look for `runnerconfig.json` in the same directory as
409+
the DLL.
410+
411+
Optionally, to avoid polluting your git workspace and requring a build after
412+
each config change, copy `runnerconfig.json` to a new file, make your edits
413+
there, and then specify the new file with the RUNNER_CONFIG environment
414+
variable.
415+
416+
PowerShell:
417+
418+
```pwsh
419+
> copy runnerconfig.json $HOME\.configs\runnerconfig.json
420+
421+
# Make edits to $HOME\.configs\runnerconfig.json
422+
423+
# You must set the RUNNER_CONFIG environment variable for the current shell.
424+
> $env:RUNNER_CONFIG="${HOME}\.configs\runnerconfig.json"
425+
```
426+
427+
Bash:
428+
429+
```bash
430+
$ cp runnerconfig.json ~/.configs/runnerconfig.json
431+
432+
# Make edits to ~/.configs/runnerconfig.json
433+
434+
# Optionally export RUNNER_CONFIG.
435+
$ export RUNNER_CONFIG=~/.configs/runnerconfig.json
436+
```
437+
438+
### Run Benchmarks
439+
440+
All benchmarks must be compiled and run in **Release** configuration.
441+
442+
PowerShell:
443+
444+
```pwsh
445+
> dotnet run -c Release -f net9.0
446+
```
447+
448+
Bash:
449+
450+
```bash
451+
# Omit RUNNER_CONFIG if you exported it earlier, or if you're using the
452+
# copy prepared by the build.
453+
$ dotnet run -c Release -f net9.0
454+
455+
$ RUNNER_CONFIG=~/.configs/runnerconfig.json dotnet run -c Release -f net9.0
456+
```

CHANGELOG.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,23 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
66

77
# Release Notes
88

9+
## [Stable release 6.0.2] - 2025-04-25
10+
11+
This update brings the below changes over the previous release:
12+
13+
### Fixed
14+
15+
- Fixed possible `NullPointerException` during socket receive [#3283](https://github.com/dotnet/SqlClient/pull/3283)
16+
- Fixed reference assembly definitions for SqlJson APIs [#3169](https://github.com/dotnet/SqlClient/pull/3169)
17+
- Fixed an error reading the output parameter of type JSON while executing stored procedure [#3173](https://github.com/dotnet/SqlClient/pull/3173)
18+
19+
### Changed
20+
- Updated the below dependencies:
21+
- Updated [Microsoft.Bcl.Cryptography](https://www.nuget.org/packages/Microsoft.Bcl.Cryptography/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
22+
- Updated [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
23+
- Updated [System.Configuration.ConfigurationManager](https://www.nuget.org/packages/System.Configuration.ConfigurationManager/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
24+
- Updated [System.Security.Cryptography.Pkcs](https://www.nuget.org/packages/System.Security.Cryptography.Pkcs/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
25+
926
## [Stable release 6.0.1] - 2025-01-23
1027

1128
This update brings the below changes over the previous release:
@@ -130,6 +147,22 @@ This update brings the below changes over the previous release:
130147
- Updated assembly version to 6.0.0.0. [#2382](https://github.com/dotnet/SqlClient/pull/2382)
131148
- Code health improvements: [#2366](https://github.com/dotnet/SqlClient/pull/2366), [#2369](https://github.com/dotnet/SqlClient/pull/2369), [#2381](https://github.com/dotnet/SqlClient/pull/2381), [#2390](https://github.com/dotnet/SqlClient/pull/2390), [#2392](https://github.com/dotnet/SqlClient/pull/2392), [#2403](https://github.com/dotnet/SqlClient/pull/2403), [#2410](https://github.com/dotnet/SqlClient/pull/2410), [#2413](https://github.com/dotnet/SqlClient/pull/2413), [#2425](https://github.com/dotnet/SqlClient/pull/2425), [#2428](https://github.com/dotnet/SqlClient/pull/2428), [#2440](https://github.com/dotnet/SqlClient/pull/2440), [#2443](https://github.com/dotnet/SqlClient/pull/2443), [#2450](https://github.com/dotnet/SqlClient/pull/2450), [#2466](https://github.com/dotnet/SqlClient/pull/2466), [#2486](https://github.com/dotnet/SqlClient/pull/2486), [#2521](https://github.com/dotnet/SqlClient/pull/2521), [#2522](https://github.com/dotnet/SqlClient/pull/2522), [#2533](https://github.com/dotnet/SqlClient/pull/2533), [#2552](https://github.com/dotnet/SqlClient/pull/2552), [#2560](https://github.com/dotnet/SqlClient/pull/2560), [#2726](https://github.com/dotnet/SqlClient/pull/2726), [#2751](https://github.com/dotnet/SqlClient/pull/2751), [#2811](https://github.com/dotnet/SqlClient/pull/2811)
132149

150+
## [Stable release 5.2.3] - 2025-04-29
151+
152+
This update brings the following changes since the 5.2.2 release:
153+
154+
### Fixed
155+
156+
- Fixed possible `NullPointerException` during socket receive (PR [#3284](https://github.com/dotnet/SqlClient/pull/3284))
157+
- Fixed inconsistencies between source and reference projects (PR [#3124](https://github.com/dotnet/SqlClient/pull/3124))
158+
- Adjusted retry logic to allow errors with negative numbers to be considered transient (PR [#3185](https://github.com/dotnet/SqlClient/pull/3185))
159+
160+
### Changed
161+
162+
- Updated the following dependencies:
163+
- [System.Private.Uri](https://www.nuget.org/packages/System.Private.Uri) 4.3.2 - Avoid transitive [CVE-2019-0820](https://msrc.microsoft.com/update-guide/en-US/advisory/CVE-2019-0820) (PR [#3076](https://github.com/dotnet/SqlClient/pull/3076))
164+
- [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/6.0.3) 6.0.1 to 6.0.3 - Avoid [CVE-2024-43483](https://github.com/advisories/GHSA-qj66-m88j-hmgj) (PR [#3280](https://github.com/dotnet/SqlClient/pull/3280))
165+
133166
## [Stable release 5.2.2] - 2024-08-27
134167

135168
### Fixed
@@ -359,6 +392,26 @@ This update brings the below changes over the previous release:
359392
- Added Microsoft.SqlServer.Types to verify support for SqlHierarchyId and Spatial for .NET Core. [#1848](https://github.com/dotnet/SqlClient/pull/1848)
360393
- Code health improvements:[#1943](https://github.com/dotnet/SqlClient/pull/1943)[#1949](https://github.com/dotnet/SqlClient/pull/1949)[#1198](https://github.com/dotnet/SqlClient/pull/1198)[#1829](https://github.com/dotnet/SqlClient/pull/1829)
361394

395+
## [Stable release 5.1.7] - 2025-04-25
396+
397+
This update brings the following changes since the 5.1.6 release:
398+
399+
### Fixed
400+
401+
- Fixed possible `NullPointerException` during socket receive (PR [#3285](https://github.com/dotnet/SqlClient/pull/3285))
402+
- Fixed inconsistencies between source and reference projects (PR [#3180](https://github.com/dotnet/SqlClient/pull/3180))
403+
404+
### Changed
405+
406+
- Updated the following dependencies:
407+
- [Microsoft.Data.SqlClient.SNI](https://www.nuget.org/packages/Microsoft.Data.SqlClient.SNI/5.1.2) 5.1.1 to 5.1.2 for .NET Framework on Windows (PR [#3294](https://github.com/dotnet/SqlClient/pull/3294))
408+
- [Microsoft.Data.SqlClient.SNI.runtime](https://www.nuget.org/packages/Microsoft.Data.SqlClient.SNI.runtime/5.1.2) 5.1.1 to 5.1.2 for .NET on Windows (PR [#3294](https://github.com/dotnet/SqlClient/pull/3294))
409+
- [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/6.0.3) 6.0.1 to 6.0.3 - Avoid [CVE-2024-43483](https://github.com/advisories/GHSA-qj66-m88j-hmgj) (PR [#3068](https://github.com/dotnet/SqlClient/pull/3068))
410+
- [Microsoft.Extensions.Hosting](https://www.nuget.org/packages/Microsoft.Extensions.Hosting/6.0.1) 6.0.0 to 6.0.1 - Avoid transitive dependency on vulnerable [System.Text.Json](https://www.nuget.org/packages/System.Text.Json/6.0.0) 6.0.0 (PR [#3207](https://github.com/dotnet/SqlClient/pull/3207))
411+
- [System.Private.Uri](https://www.nuget.org/packages/System.Private.Uri) 4.3.2 - Avoid transitive [CVE-2019-0820](https://msrc.microsoft.com/update-guide/en-US/advisory/CVE-2019-0820) (PR [#3077](https://github.com/dotnet/SqlClient/pull/3077))
412+
- [System.Text.Encodings.Web](https://www.nuget.org/packages/System.Text.Encodings.Web/6.0.1) 6.0.0 to 6.0.1 - Avoid transitive downgrade for .NET Framework targets (PR [#3279](https://github.com/dotnet/SqlClient/pull/3279))
413+
- [System.Text.Json](https://www.nuget.org/packages/System.Text.Json/6.0.11) 6.0.11 - Avoid transitive dependencies on older vulnerable versions for .NET Framework targets (PR [#3279](https://github.com/dotnet/SqlClient/pull/3279))
414+
362415
## [Stable release 5.1.6] - 2024-08-27
363416

364417
### Fixed

build.proj

Lines changed: 98 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -178,21 +178,109 @@
178178
</Target>
179179

180180
<!-- Tests -->
181+
182+
<!-- Run all unit tests applicable to the host OS. -->
181183
<Target Name="RunTests" DependsOnTargets="RunFunctionalTests;RunManualTests"/>
182-
<Target Name="RunFunctionalTests">
183-
<!-- Windows -->
184-
<Exec ConsoleToMsBuild="true" Command="$(DotnetPath)dotnet test &quot;@(FunctionalTestsProj)&quot; -p:Configuration=$(Configuration) -p:Target$(TFGroup)Version=$(TF) -p:ReferenceType=$(ReferenceType) --no-build -v n --collect &quot;Code coverage&quot; -p:TestSet=$(TestSet) --results-directory $(ResultsDirectory) -p:TestTargetOS=Windows$(TargetGroup) --filter &quot;category!=non$(TargetGroup)tests&amp;category!=failing&amp;category!=nonwindowstests&quot; &quot;--logger:trx;LogFilePrefix=Functional-Windows$(TargetGroup)-$(TestSet)&quot;" Condition="'$(IsEnabledWindows)' == 'true'"/>
185-
<!-- Unix -->
186-
<Exec ConsoleToMsBuild="true" Command="$(DotnetPath)dotnet test &quot;@(FunctionalTestsProj)&quot; -p:Configuration=$(Configuration) -p:TargetNetCoreVersion=$(TF) -p:ReferenceType=$(ReferenceType) --no-build -v n -p:TestSet=$(TestSet) --results-directory $(ResultsDirectory) -p:TestTargetOS=Unixnetcoreapp --collect &quot;Code coverage&quot; --filter &quot;category!=nonnetcoreapptests&amp;category!=failing&amp;category!=nonlinuxtests&amp;category!=nonuaptests&quot; &quot;--logger:trx;LogFilePrefix=Functional-Unixnetcoreapp-$(TestSet)&quot;" Condition="'$(IsEnabledWindows)' != 'true'"/>
184+
185+
<!-- Run all Functional tests applicable to the host OS. -->
186+
<Target Name="RunFunctionalTests" DependsOnTargets="RunFunctionalTestsWindows;RunFunctionalTestsUnix"/>
187+
188+
<!-- Run all Functional tests applicable to Windows. -->
189+
<Target Name="RunFunctionalTestsWindows" Condition="'$(IsEnabledWindows)' == 'true'">
190+
<PropertyGroup>
191+
<TestCommand>
192+
$(DotnetPath)dotnet test "@(FunctionalTestsProj)"
193+
--no-build
194+
-v n
195+
-p:Configuration=$(Configuration)
196+
-p:Target$(TFGroup)Version=$(TF)
197+
-p:ReferenceType=$(ReferenceType)
198+
-p:TestSet=$(TestSet)
199+
-p:TestTargetOS=Windows$(TargetGroup)
200+
--collect "Code coverage"
201+
--results-directory $(ResultsDirectory)
202+
--filter "category!=non$(TargetGroup)tests&amp;category!=failing&amp;category!=nonwindowstests"
203+
--logger:"trx;LogFilePrefix=Functional-Windows$(TargetGroup)-$(TestSet)"
204+
</TestCommand>
205+
<TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand>
206+
</PropertyGroup>
207+
<Message Text=">>> Running Functional test for Windows via command: $(TestCommand)"/>
208+
<Exec ConsoleToMsBuild="true" Command="$(TestCommand)"/>
209+
</Target>
210+
211+
<!-- Run all Functional tests applicable to Unix. -->
212+
<Target Name="RunFunctionalTestsUnix" Condition="'$(IsEnabledWindows)' != 'true'">
213+
<PropertyGroup>
214+
<TestCommand>
215+
$(DotnetPath)dotnet test "@(FunctionalTestsProj)"
216+
--no-build
217+
-v n
218+
-p:Configuration=$(Configuration)
219+
-p:TargetNetCoreVersion=$(TF)
220+
-p:ReferenceType=$(ReferenceType)
221+
-p:TestSet=$(TestSet)
222+
-p:TestTargetOS=Unixnetcoreapp
223+
--collect "Code coverage"
224+
--results-directory $(ResultsDirectory)
225+
--filter "category!=nonnetcoreapptests&amp;category!=failing&amp;category!=nonlinuxtests&amp;category!=nonuaptests"
226+
--logger:"trx;LogFilePrefix=Functional-Unixnetcoreapp-$(TestSet)"
227+
</TestCommand>
228+
<TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand>
229+
</PropertyGroup>
230+
<Message Text=">>> Running Functional test for Unix via command: $(TestCommand)"/>
231+
<Exec ConsoleToMsBuild="true" Command="$(TestCommand)"/>
232+
</Target>
233+
234+
<!-- Run all Manual tests applicable to the host OS. -->
235+
<Target Name="RunManualTests" DependsOnTargets="RunManualTestsWindows;RunManualTestsUnix"/>
236+
237+
<!-- Run all Manual tests applicable to Windows. -->
238+
<Target Name="RunManualTestsWindows" Condition="'$(IsEnabledWindows)' == 'true'">
239+
<PropertyGroup>
240+
<TestCommand>
241+
$(DotnetPath)dotnet test "@(ManualTestsProj)"
242+
--no-build
243+
-v n
244+
-p:Configuration=$(Configuration)
245+
-p:Target$(TFGroup)Version=$(TF)
246+
-p:ReferenceType=$(ReferenceType)
247+
-p:TestSet=$(TestSet)
248+
-p:TestTargetOS=Windows$(TargetGroup)
249+
--collect "Code coverage"
250+
--results-directory $(ResultsDirectory)
251+
--filter "category!=non$(TargetGroup)tests&amp;category!=failing&amp;category!=nonwindowstests"
252+
--logger:"trx;LogFilePrefix=Manual-Windows$(TargetGroup)-$(TestSet)"
253+
</TestCommand>
254+
<TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand>
255+
</PropertyGroup>
256+
<Message Text=">>> Running Manual test for Windows via command: $(TestCommand)"/>
257+
<Exec ConsoleToMsBuild="true" Command="$(TestCommand)"/>
187258
</Target>
188259

189-
<Target Name="RunManualTests">
190-
<!-- Windows -->
191-
<Exec ConsoleToMsBuild="true" Command="$(DotnetPath)dotnet test &quot;@(ManualTestsProj)&quot; -p:Configuration=$(Configuration) -p:Target$(TFGroup)Version=$(TF) -p:ReferenceType=$(ReferenceType) --no-build -l &quot;console;verbosity=normal&quot; --collect &quot;Code coverage&quot; -p:TestSet=$(TestSet) --results-directory $(ResultsDirectory) -p:TestTargetOS=Windows$(TargetGroup) --filter &quot;category!=non$(TargetGroup)tests&amp;category!=failing&amp;category!=nonwindowstests&quot; &quot;--logger:trx;LogFilePrefix=Manual-Windows$(TargetGroup)-$(TestSet)&quot;" Condition="'$(IsEnabledWindows)' == 'true'"/>
192-
<!-- Unix -->
193-
<Exec ConsoleToMsBuild="true" Command="$(DotnetPath)dotnet test &quot;@(ManualTestsProj)&quot; -p:Configuration=$(Configuration) -p:TargetNetCoreVersion=$(TF) -p:ReferenceType=$(ReferenceType) --no-build -l &quot;console;verbosity=normal&quot; --collect &quot;Code coverage&quot; -p:TestSet=$(TestSet) --results-directory $(ResultsDirectory) -p:TestTargetOS=Unixnetcoreapp --filter &quot;category!=nonnetcoreapptests&amp;category!=failing&amp;category!=nonlinuxtests&amp;category!=nonuaptests&quot; &quot;--logger:trx;LogFilePrefix=Manual-Unixnetcoreapp-$(TestSet)&quot;" Condition="'$(IsEnabledWindows)' != 'true'"/>
260+
<!-- Run all Manual tests applicable to Unix. -->
261+
<Target Name="RunManualTestsUnix" Condition="'$(IsEnabledWindows)' != 'true'">
262+
<PropertyGroup>
263+
<TestCommand>
264+
$(DotnetPath)dotnet test "@(ManualTestsProj)"
265+
--no-build
266+
-v n
267+
-p:Configuration=$(Configuration)
268+
-p:TargetNetCoreVersion=$(TF)
269+
-p:ReferenceType=$(ReferenceType)
270+
-p:TestSet=$(TestSet)
271+
-p:TestTargetOS=Unixnetcoreapp
272+
--collect "Code coverage"
273+
--results-directory $(ResultsDirectory)
274+
--filter "category!=nonnetcoreapptests&amp;category!=failing&amp;category!=nonlinuxtests&amp;category!=nonuaptests"
275+
--logger:"trx;LogFilePrefix=Manual-Unixnetcoreapp-$(TestSet)"
276+
</TestCommand>
277+
<TestCommand>$(TestCommand.Replace($([System.Environment]::NewLine), " "))</TestCommand>
278+
</PropertyGroup>
279+
<Message Text=">>> Running Manual test for Unix via command: $(TestCommand)"/>
280+
<Exec ConsoleToMsBuild="true" Command="$(TestCommand)"/>
194281
</Target>
195282

283+
<!-- Clean -->
196284
<Target Name="Clean">
197285
<RemoveDir Directories='$([System.IO.Directory]::GetDirectories(".","artifacts", SearchOption.AllDirectories))' />
198286
<RemoveDir Directories='$([System.IO.Directory]::GetDirectories(".","bin", SearchOption.AllDirectories))' />

doc/samples/SqlConnectionStringBuilder.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ static void Main()
2121
// connection string, and you can retrieve and
2222
// modify any of the elements.
2323
builder.ConnectionString = "server=(local);user id=ab;" +
24-
"password= a!Pass113;initial catalog=AdventureWorks";
24+
"password=********;initial catalog=AdventureWorks";
2525

2626
// Now that the connection string has been parsed,
2727
// you can work with individual items.
2828
Console.WriteLine(builder.Password);
29-
builder.Password = "new@1Password";
29+
builder.Password = "********";
3030

3131
// You can refer to connection keys using strings,
3232
// as well. When you use this technique (the default

doc/samples/SqlConnectionStringBuilder3.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ static void Main()
1010
try
1111
{
1212
string connectString =
13-
"Server=(local);Database=AdventureWorks;UID=ab;Pwd= a!Pass@@";
13+
"Server=(local);Database=AdventureWorks;UID=ab;Pwd=********";
1414
Console.WriteLine("Original: " + connectString);
1515
SqlConnectionStringBuilder builder =
1616
new SqlConnectionStringBuilder(connectString);

doc/samples/SqlConnectionStringBuilder_IntegratedSecurity.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ static void Main()
1010
try
1111
{
1212
string connectString =
13-
"Data Source=(local);User ID=ab;Password=MyPassword;" +
13+
"Data Source=(local);User ID=ab;Password=********;" +
1414
"Initial Catalog=AdventureWorks";
1515

1616
SqlConnectionStringBuilder builder =

doc/samples/SqlConnectionStringBuilder_Remove.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ static void Main()
1010
try
1111
{
1212
string connectString =
13-
"Data Source=(local);User ID=ab;Password= a1Pass@@11;" +
13+
"Data Source=(local);User ID=ab;Password=********;" +
1414
"Initial Catalog=AdventureWorks";
1515

1616
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connectString);

0 commit comments

Comments
 (0)