Tôi đang cố gắng sử dụng LINQ trong PowerShell. Có vẻ như điều này hoàn toàn có thể xảy ra vì PowerShell được xây dựng trên nền .NET Framework, nhưng tôi không thể làm cho nó hoạt động được. Ví dụ, khi tôi thử như sau (giả tạo) mã:Có thể sử dụng LINQ trong PowerShell không?
$data = 0..10
[System.Linq.Enumerable]::Where($data, { param($x) $x -gt 5 })
tôi nhận được lỗi sau:
Cannot find an overload for "Where" and the argument count: "2".
Đừng bận tâm sự thật rằng điều này có thể được thực hiện với Where-Object
. Điểm của câu hỏi này không phải là tìm một cách thành ngữ để thực hiện thao tác này trong PowerShell. Một số nhiệm vụ sẽ dễ dàng hơn trong nhiều năm ánh sáng trong PowerShell nếu tôi có thể sử dụng LINQ.
cao nhất bình chọn câu trả lời cho câu hỏi này sẽ đề nghị rằng bạn không thể sử dụng các toán LINQ trong PowerShell http://stackoverflow.com/questions/2869967/how-to-query -list-in-powershell – DeanOC
'[System.Linq.Enumerable] :: Ở đâu ($ data, [Func [object, bool]] {param ($ x) $ x -gt 5})' – PetSerAl
@PetSerAl Hãy nói cái gì! Bạn thật tuyệt! Bạn có thể thêm nó như là một câu trả lời và bạn có thể giải thích tại sao nó hoạt động nhưng không: '[System.Linq.Enumerable] :: Ở đâu ($ data, [System.Func [int, bool]] {param ($ x) $ x -gt 5}) ', không. Giả sử bạn biết tại sao, đó là. –