Tôi đang tìm các đối tượng chuyển tiếp tới các hàm thông qua đường ống PowerShell chuyển đổi chúng thành các đối tượng string
. Nếu tôi vượt qua đối tượng như một tham số, nó sẽ giữ kiểu của nó. Để chứng minh:Lấy các kết quả khác nhau bằng cách sử dụng đường ống với các hàm
Tôi đã chức năng PowerShell sau đó sẽ hiển thị loại và giá trị của một đối tượng:
function TestFunction {
param (
[Parameter(
Position=0,
Mandatory=$true,
ValueFromPipeline=$true
)] $InputObject
)
Echo $InputObject.GetType().Name
Echo $InputObject
}
Tôi chạy script này để kiểm tra các chức năng:
[string[]] $Array = "Value 1", "Value 2"
# Result outside of function.
Echo $Array.GetType().Name
Echo $Array
Echo ""
# Calling function with parameter.
TestFunction $Array
Echo ""
# Calling function with pipeline.
$Array | TestFunction
này tạo ra kết quả:
String[]
Value 1
Value 2
String[]
Value 1
Value 2
String
Value 2
EDIT: Làm thế nào tôi có thể sử dụng đường ống để truyền toàn bộ mảng đến một niềm vui ction?
Đẹp! Điều đó khiến nó hoạt động. Cảm ơn! Và lần tới, tôi sẽ RTFM. :-) –