Я хочу використовувати об'єкт SQLConnection так, як, наприклад, від vb. Я хотів би зробити це:
напр
$conn = New-Object system.data.sqlclient.sqlconnectionstringbuilder
$conn.DataSource = 'myserver'
але це не вдається:
Keyword not supported: 'DataSource'.
At line:1 char:4
+ $conn. <<<< DataSource = 'myserver'
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : PropertyAssignmentException
незважаючи на:
PS C:\WINDOWS\system32\WindowsPowerShell> $conn|Get-Member *sour*
TypeName: System.Data.SqlClient.SqlConnectionStringBuilder
Name MemberType Definition
---- ---------- ----------
DataSource Property System.String DataSource {get;set;}
Моя версія Powershell:
PS C:\WINDOWS\system32\WindowsPowerShell> $PSVersionTable
Name Value
---- -----
CLRVersion 2.0.50727.3634
BuildVersion 6.0.6002.18111
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
Що викликає повідомлення про помилку?
Зокрема, це працює:
$conn.database = 'mydb'
(і встановлює властивість 'InitialCatalog')
і це не вдається
$conn.initialcatalog = 'mydb'
незважаючи на:
PS C:\WINDOWS\system32\WindowsPowerShell> $conn|Get-Member initialcatalog
TypeName: System.Data.SqlClient.SqlConnectionStringBuilder
Name MemberType Definition
---- ---------- ----------
InitialCatalog Property System.String InitialCatalog {get;set;}
Що мене бентежить, це те, чому я можу встановити властивість "база даних", навіть якщо вона не знаходиться в списку членів, але я не можу встановити властивості в списку членів, хоча PS каже, що вони можуть бути налаштовані.