Je veux utiliser l'objet SQLConnection comme je le ferais en vb, par exemple. J'aimerais faire ceci:
par exemple.
$conn = Nouvel objet system.data.sqlclient.sqlconnectionstringbuilder
$conn.DataSource = 'monserveur'
mais cela échoue:
Mot-clé non pris en charge: 'DataSource'.
À la ligne:1 caractère:4
+ $conn. <<<< DataSource = 'monserveur'
+ CategoryInfo : Operation non valide : [], RuntimeException
+ FullyQualifiedErrorId : PropertyAssignmentException
même si:
PS C:\WINDOWS\system32\WindowsPowerShell> $conn|Get-Member *sour*
TypeName: System.Data.SqlClient.SqlConnectionStringBuilder
Name MemberType Definition
---- ---------- ----------
DataSource Propriété System.String DataSource {get;set;}
Ma version de 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
Qu'est-ce qui cause le message d'erreur?
En particulier, ceci fonctionne:
$conn.database = 'mabase'
(et définit la propriété 'InitialCatalog')
et cela échoue
$conn.initialcatalog = 'mabase'
même si:
PS C:\WINDOWS\system32\WindowsPowerShell> $conn|Get-Member initialcatalog
TypeName: System.Data.SqlClient.SqlConnectionStringBuilder
Name MemberType Definition
---- ---------- ----------
InitialCatalog Propriété System.String InitialCatalog {get;set;}
Ce qui me perturbe, c'est pourquoi je peux définir la propriété "database" même si elle n'est pas dans la liste des membres, mais je ne peux pas définir les propriétés de la liste des membres, même si PS dit qu'elles sont configurables.