Bu nesnenin türü iyi dışarı yazıyoruz ne göstermek için kullanılan her türlü çıkışa kabul edilebilir - Bir DataSet kesinlikle gayet iyi. Tek olası uyarı, PowerShell'in v2'nin .NET Framework'ün (Sunucu Çekirdeği gibi) daha az bir sürümü üzerinde çalıştığı bir durum olabileceğidir, bu yüzden eğer cmdlet'leriniz için potansiyel bir senaryo varsa, emin olmak için biraz dikkatli olmanız gerekir. cmdlet'inizin kullanılabileceği her sistemde çıktı aldığınız nesne.
Bütün bunlar, boruhattı nesnelerin koleksiyonlarını içerdiğinde en iyi şekilde çalışır; DataSet bir koleksiyon değildir. Diğer bir deyişle, boru hattı üzerinden bir seferde tek bir nesneyi alabilmeniz için alt kısımdaki cmdlet'leri istiyorsunuz, böylece bu cmdlet'lerin bir nesneyi elle saymak zorunda kalmaması. Tam olarak yaptığınız şey hakkında pek bir şey bilmiyorum - bir DataSet'in tamamen uygun olması iyi olabilir - ancak genellikle DataSet üzerinden dahili bir cmdlet döngüsü görmeyi tercih ederim. Tablodaki her sütun bir özellik haline gelir) ve bu nesneleri boru hattına gönderir. Bu, dışarıda bıraktığınız şeyi tüketebilen aşağı akış cmdlet'lerinin sayısını artırır.
Basit bir test, cmdlet'in çıktısını Export-CSV'ye aktarmaktır. Eğer çalışırsa (ve muhtemelen bir DataSet ile olmazsa), o zaman doğru olanı yapıyorsunuz demektir. Şimdi, DataSet'i çıkaran bir cmdlet oluşturmanız gerekebilir ve sizin yazdığınız (bu DataSets'i kullanan) başka bir cmdlet'ler için yalnızca amaç. Bununla ilgili yanlış bir şey yok. Maksimum esneklik, tek bir nesnedir, ancak tüm PowerShell'in çekirdek cmdlet'lerinin çıktınızda çalışmasını sağlar.
Bu yardımcı olur umarım.