sql >> Database >  >> RDS >> Sqlserver

Nullable Object moet een waarde hebben #2

Zoals u al zei, het gegevenstype van u.LastLogon is DateTime? . Dit betekent dat het al dan niet een waarde kan hebben. Door te casten naar DateTime , u eist dat het een waarde heeft. In dit geval niet.

Afhankelijk van wat u ermee probeert te doen, kunt u de HasValue controleren eigendom:

userRow["LastLogon"] = u.LastLogin.HasValue ? 
                       (object) u.LastLogin.ToShortDateString() : DBNull.Value;

Als uw database LastLogon kolom van het type DateTime is, dan zou u het volgende moeten kunnen doen:

userRow["LastLogon"] = u.LastLogin.HasValue ? 
                       (object) u.LastLogin.Value : DBNull.Value;


  1. SQL-instructie - Hoe kan ik de snelheid verbeteren met indexeren?

  2. syntaxisfout voorbereidStatement

  3. MySQL De client en server kunnen niet communiceren, omdat ze geen gemeenschappelijk algoritme hebben

  4. Krijg de gemiddelde waarde voor elke X-rij in SQL