-2
Ich habe eine dynamische Regel-Engine, und ich möchte Klasse übergeben und jedes Mal, wenn die Klasse anders gesendet wird.So konvertieren Sie dynamische in unbekannte Klasse in der Laufzeit
Zum Beispiel:
Order MyOrder = new Order()
{
OrderId = 1,
Customer = new Customer()
{
FirstName = "John",
LastName = "Doe",
Country = new Country()
{
CountryCode = "AUS"
}
},
Items = new List<Item>(){
new Item(){ ItemCode = "MM23", Cost=5.25M},
new Item(){ ItemCode = "LD45", Cost=5.25M},
new Item(){ ItemCode = "Test", Cost=3.33M},
}
};
Ich möchte, dies ändern:
var compiledRule = engine.CompileRule<Order>(rule);
zu:
dynamic obj = MyOrder;
var compiledRule = engine.CompileRule<?????>(rule);
wie kann ich Typen von obj bekommen und statt „?? setzen ?? "
Für den Fall, das ist ein XY-Problem (https://meta.stackexchange.com/questions/66377/ Was-ist-das-xy-Problem) kannst du einen Schritt zurück machen und erklären ** warum ** brauchst du das? – mjwills