Chcę użyć typu danych z biblioteki Universal Windows Platform, jak mogę odwołać się do zawierającego przestrzeń nazw lub złożenia w PowerShell?Jak mogę odwoływać się do klas UWP w PowerShell
Na przykład chcę użyć Windows.Data.Json.JsonObject
class, aby przetworzyć dla mnie kilka jsonów.
Gdyby to była regularna klasa .NET, chciałbym zrobić coś jak
Add-Type -AssemblyName Windows.Data.Json
$jsonObject = [Windows.Data.Json.JsonObject]::Parse('{data:["powershell","rocks"]}')
Ale ta strategia nie mnie:
Add-Type : Cannot add type. The assembly 'Windows.Data.Json' could not be found.
At line:1 char:1
+ Add-Type -AssemblyName Windows.Data.Json
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Windows.Data.Json:String) [Add-Type], Exception
+ FullyQualifiedErrorId : ASSEMBLY_NOT_FOUND,Microsoft.PowerShell.Commands.AddTypeCommand
Teraz może się okazać, że jestem po prostu źle w założeniu, że zespół dla przestrzeni nazw jest Windows.Data.Json.dll
, ale odwołanie API w rzeczywistości nie wydaje się zawierać żadnych odniesień do zawierających pliki, co prowadzi mnie do przekonania, że plik DLL w rzeczywistości nie jest tym, czego powinienem szukać.
Zakładam, że UWP ma swój własny fajny sklep podobny do GAC-a, z którego mogę ładować biblioteki współdzielone, po prostu nie wiem jak.
Moje pytanie brzmi: jak mogę załadować bibliotekę współdzieloną UWP do PowerShella i jak mam odnieść się do literówek typu UWP?
Running PowerShell 5.1 w systemie Windows 10 (build 1703)
Czy zaakceptować [blogu] (https://blogs.msdn.microsoft.com/ptorr/ 2012/05/27/loading-winrt-types-via-reflection-in-windows-8 /)? –
@ PeterTorr-MSFT Drobne referencje, zachęcamy do dodania odpowiedzi opisującej znaczenie parametru GetType/TypeInfo –