Suy nghĩ về nó trong khi trả lời câu hỏi này .
Làm thế nào bạn có thể tránh sự cần thiết phải đủ điều kiện mỗi loại duy nhất trong một không gian tên?
Nó thực sự, thực sự tẻ nhạt để viết System.Security.Cryptography.X509Certificates.X509Store
thay vì X509Store
, hoặc [System.Security.Cryptography.X509Certificates.StoreName]::My
thay vì [StoreName]::My
.
Trong C # bạn có using
chỉ thị ... còn Powershell thì sao?
EDIT 1 - Điều này hoạt động cho các loại:
$ns = "System.Security.Cryptography.X509Certificates"
$store = New-Object "$ns.X509Store"(StoreName,StoreLocation)
New-Object lấy một chuỗi ký tự là định nghĩa kiểu, vì vậy nó có thể được xây dựng theo chương trình.
EDIT 2 - Công việc này dành cho các thành viên liệt kê được sử dụng làm tham số:
$store = New-Object "$ns.X509Store"("My","LocalMachine")
Trong đó "Của tôi" là [System.Security.Cryptography.X509Certificates.StoreName]::My
và "LocalMachine" [System.Security.Cryptography.X509Certificates.StoreLocation]::LocalMachine
.
Tên theo nghĩa đen được tự động chuyển đổi thành thành viên liệt kê, nếu được đặt ở nơi dự kiến sẽ có thành viên liệt kê.