nachzuahmen Ich habe eine Situation, in der ich Eigenschaften einiger Objekte innerhalb eines Objektinitialisierers zuweisen müssen. Einige dieser Objekte können null sein, und ich muss auf ihre Eigenschaften zugreifen, das Problem ist, dass sie zu viele sind, und die Verwendung einer if/else-Sache ist nicht gut.Gibt es eine Möglichkeit, C# 6 Null-Conditional-Operator in C# 5
Beispiel
visits = visitJoins.AsEnumerable().Select(joined => new VisitPDV()
{
VisiteId = joined.Visite.VisiteId.ToString(),
NomPointDeVente = joined.VisitePdvProduit.PointDeVente.NomPointDeVente,
});
Die joined.VisitePdvProduit
null sein kann, und das Problem ist, dass es wie Dutzende solcher Zuweisungen sind (ich habe nur einen, den Code zu verkürzen)
Die C# 6
Null-Conditional operator
ist die perfekte Lösung für diese Situation, das Problem ist, dass ich auf C# 5
in diesem Projekt bin, gibt es eine Möglichkeit, das zu imitieren?
eine Erweiterungsmethode erstellen – MikeSW
Wie wäre es 'visitJoins.AsEnumerable(). Wo (vj => vj.VisitePdvProduit! = Null) .Select (verbunden => new VisitPDV()' –
@ClayVerValen wie gesagt, ich habe mehrere Zuweisungen So, ich habe es gekürzt, um langen Code hier zu vermeiden, Ihren Vorschlag zu tun wird nicht helfen. – AymenDaoudi