Prüfen, ob Objekt hat null-in jeder Eigenschaft

Ich habe Klasse mit mehreren Eigenschaften;

public class Employee
{
    public string TYPE { get; set; }
    public int? SOURCE_ID { get; set; }
    public string FIRST_NAME { get; set; }        
    public string LAST_NAME { get; set; }

    public List<Department> departmentList { get; set; }
    public List<Address> addressList { get; set; }

}

manchmal dieses Objekt zurückgeben, mich mit dem Wert in allen Sachen sagen

Employee emp = new Employee();
emp.FIRST_NAME= 'abc';

übrigen Werte sind null. Das ist OK

Aber, Wie kann ich überprüfen, wenn alle Werte in den Eigenschaften der Objekte null sind

wie string.IsNullOrEmpty() für das Objekt ?

curretly ich bin prüfen wie diese;

if(emp.FIRST_NAME == null && emp.LAST_NAME == null && emp.TYPE == null && emp.departmentList == null ...)
  • Ihr Objekt hat 6 Eigenschaften - einer von Ihnen ist nicht einmal die null-Werte zulässt - das macht 5. Du bist besser dran, nur Prüfung für null als eine komplexe Reflexion-basiert Szenario. Die Art und Weise Sie es tun ist wohl der richtige Weg.
  • Was über das erstellen einer Funktion in der Klasse, die das für Sie übernimmt? So rufen Sie ihn, Wann immer Sie es brauchen.
  • Ihrer aktuellen überprüfen ist sowohl relaiable und lesbar. Möchten Sie vielleicht, um es aufteilen auf mehrere Linien (eine Prüfung pro Zeile), auch wenn es nur riesige Zustand. Auch ein paar Versionen her, Sie Hinzugefügt, die null-bedingte Operatoren von C#6. Diese könnte eine bessere option für single-line-Prüfungen. docs.microsoft.com/en-us/dotnet/csharp/language-reference/...
  • like string.IsNullOrEmpty() for object ? Genau zu klären, was könnte ein Missverständnis sein hier: ein Objekt, das null ist nicht das gleiche wie ein Objekt, dessen Eigenschaften sind alle null. Wenn Sie nicht unterscheiden zwischen den beiden, Sie sind Gesicht eine Menge Missverständnisse, wenn Sie sprechen über Ihren code.
  • es gibt viele Missverständnisse darüber, konnte Sie schlagen alle guten Lesungen
InformationsquelleAutor trighati | 2018-05-02
Schreibe einen Kommentar