कस्टम वस्तुओं के बारे में एक लेख के माध्यम से पढ़ना के NoteProperty तक पहुंचने के लिए:Powershell कस्टम वस्तुओं: एकत्र परिणाम
http://technet.microsoft.com/en-us/library/ff730946.aspx
मुझे आश्चर्य है कि क्यों मैं व्यक्तिगत प्रवेश के लिए एक परिणाम मिलता है: उदाहरण के लिए $ objAverage.Name
जबकि $ colAverages द्वारा। कुछ भी पुनः प्राप्त नहीं किया गया है। हालांकि गेट-सदस्य दोनों के साथ [System.Object] नोटप्रॉपर्टी नाम
दिखाता है कि मैं अपने परिणामों के सभी नाम $ colAverages में वापस करने की अपेक्षा करता हूं।
लेख के कोड: C: \ अस्थायी \ base.txt
Name,AtBats,Hits
Ken Myer,43,13
Pilar Ackerman,28,11
Jonathan Haas,37,17
Syed Abbas,41,20
Luisa Cazzaniga,22,6
Andrew Cencini,35,11
Baris Cetinok,19,4
Powershell:
$colAverages = @()
$colStats =Import-Csv C:\Temp\base.txt
foreach ($objBatter in $colStats)
{
$objAverage = New-Object System.Object
$objAverage | Add-Member -type NoteProperty -name Name -value $objBatter.Name
$objAverage | Add-Member -type NoteProperty -name BattingAverage -value ("{0:N3}" -f ([int] $objBatter.Hits/$objBatter.AtBats))
$colAverages += $objAverage
}
$colAverages | Sort-Object BattingAverage -descending
ठीक है, colAveragesis किसी सरणी, $ objAverage नहीं है। लेकिन एक गेट-सदस्य का परिणाम क्यों उत्पन्न होता है? मैंने सोचा कि मैं दो वस्तुओं को betwen एक अंतर देखेंगे ... – icnivad
ठीक है इसे मिला: * .GetType() अंतर दिखाता है ... – icnivad
क्या यह अच्छा जवाब नहीं था? – JPBlanc