Sie müssen entweder PSObject
in eine gängige Darstellung umwandeln oder über PSObject.Properties
iterieren und Felder von POCO mit Reflektion ausfüllen.
Dieser einfache serialize-deserialize Code mit Newtosoft.Json die ersten Art und Weise implementiert und kann auch für einfache Fälle arbeiten:
public class MyInfo
{
public string Name { get; set; }
public double Diff { get; set; }
public string File { get; set; }
}
static void Main(string[] args)
{
PSObject obj = PSObject.AsPSObject(new { Name = "David", Diff = 0.2, File = "output.txt" });
var serialized = JsonConvert.SerializeObject(obj.Properties.ToDictionary(k => k.Name, v => v.Value));
Console.WriteLine(serialized);
var deseialized = JsonConvert.DeserializeObject<MyInfo>(serialized);
Console.WriteLine($"Name: {deseialized.Name}");
Console.WriteLine($"Diff: {deseialized.Diff}");
Console.WriteLine($"File: {deseialized.File}");
}
Ausgang:
{"Name":"David","Diff":0.2,"File":"output.txt"}
Name: David
Diff: 0,2
File: output.txt
ad Kreis ref mit NewtonSoft .. Ich werde Versuche es noch einmal. –
Arbeitete ... Nizza! –