'u uygulayan bir sınıf örneğinde Powershell'de bir özellik nasıl ayarlanır ADO.NET SQLite veri sağlayıcı kitaplığında here bulunan SQLiteConnectionStringBuilder
sınıfı ile çalışıyorum çalışıyorum. Sınıf tanımının DataSource adlı bir özelliği vardır. Benim powershell komut dosyasında belirlenen çalışıyorumIDictionary ve ICollection
public sealed class SQLiteConnectionStringBuilder : DbConnectionStringBuilder
{
public SQLiteConnectionStringBuilder();
public SQLiteConnectionStringBuilder(string connectionString);
public string DataSource { get; set; }
}
, yani:
$csb = new-object -TypeName System.Data.SQLite.SQLiteConnectionStringBuilder
$csb.DataSource = "C:\data\mydb.db";
yaşıyorum sorun olduğunu aşağıdaki arabirimleri uygulayan DbConnectionStringBuilder
den SQLiteConnectionStringBuilder
devralır
public class DbConnectionStringBuilder : IDictionary, ICollection, IEnumerable, ....
Sınıf, bu arabirimleri uyguladığı için Powershell, sınıftaki DataSource özelliğini ayarlamıyor, ancakdavranıyor 0 bir karma tablo olarak ve buna bir anahtar değer çifti ekleyerek key="DataSource", value="C:\data\mydb.db"
. Söylemeye gerek yok, istediğim bu değil. Peki şimdi ne yapıyorum? Powershell özelliği nasıl ayarlanır ve $ csb'yi bir karma tabloya dönüştürmez? Teşekkürler!
Yansıma gerekli değildir ("C: \ data \ mydb.db") bulduğum yolu NET Reflection API kullanarak, biraz sakar –