Ich möchte nur wissen, welche der folgenden Ansatz in Bezug auf die Leistung und Best Practices empfohlen wird. Gibt es einen Leistungsunterschied?C# tief zugreifende Objekte Leistung
if (objA.objB.objC.objD.objE != null)
{
objX.var1 = objA.objB.objC.objD.objE.prop1;
objX.var2 = objA.objB.objC.objD.objE.prop2;
objX.var3 = objA.objB.objC.objD.objE.prop3 + objA.objB.objC.objD.objE.prop4;
......
......
}
or
var objonlyE = objA.objB.objC.objD.objE
if (objonlyE != null)
{
objX.var1 = objonlyE.prop1;
objX.var2 = objonlyE.prop2;
objX.var3 = objonlyE.prop3 + objonlyE.prop4;
......
......
}
es vielleicht Unterschied in der Leistung, aber es ist nicht wahrnehmbar. – mdcuesta
es ist ein schlechtes Design Sorry zu sagen :( – paritosh
Wissen Sie, dass der Compiler einen direkten Zugriffspfad auf die Eigenschaften finden wird? –