Articles of nullable

Confronta i tipi nullable in Linq a Sql

Ho un’ quadro di categoria che ha un campo ParentIn Nullable. Quando il metodo di seguito è in esecuzione e la categoria ID è nullo, il risultato sembra nullo, tuttavia esistono categorie che hanno valore ParentId null. Qual è il problema qui, cosa mi sto perdendo? public IEnumerable GetSubCategories(long? categoryId) { var subCategories = this.Repository.Categories.Where(c […]

Come impostare enum su null

Ho un enume string name; public enum Color { Red, Green, Yellow } Come impostarlo su NULL al caricamento. name = “”; Color color = null; //error Modificato: il mio male, non l’ho spiegato correttamente. Ma tutte le risposte relative a nullable sono perfette. La mia situazione è What if, I’ve get / set per […]

C # modo elegante per verificare se la proprietà di una proprietà è nullo

In C #, supponi di voler estrarre un valore da PropertyC in questo esempio e ObjectA, PropertyA e PropertyB possono essere tutti null. ObjectA.PropertyA.PropertyB.PropertyC Come posso ottenere PropertyC in modo sicuro con il minor numero di codice? In questo momento controllerei: if(ObjectA != null && ObjectA.PropertyA !=null && ObjectA.PropertyA.PropertyB != null) { // safely pull […]

perché null non è uguale a null false

Stavo leggendo questo articolo: Ottieni null == null in SQL E il consenso è che quando si tenta di testare l’uguaglianza tra due colonne (nullable) sql, l’approccio corretto è: where ((A=B) OR (A IS NULL AND B IS NULL)) Quando A e B sono NULL, (A = B) restituisce ancora FALSE, poiché NULL non è […]

Il tipo nullable non è un tipo nullable?

Stavo facendo alcuni test con i tipi nullable, e non ha funzionato abbastanza come mi aspettavo: int? testInt = 0; Type nullableType = typeof(int?); Assert.AreEqual(nullableType, testInt.GetType()); // not the same type Questo non funziona neanche: DateTime? test = new DateTime(434523452345); Assert.IsTrue(test.GetType() == typeof(Nullable)); //FAIL DateTime? test = new DateTime(434523452345); Assert.IsTrue(test.GetType() == typeof(Nullable)); //STILL FAIL La […]

Cosa significa “DateTime?” In C #?

Sto leggendo un libro .Net, e in uno degli esempi di codice c’è una definizione di class con questo campo: private DateTime? startdate Cosa fa DateTime? significare?

Problema di tipo nullable con?: Operatore condizionale

Qualcuno potrebbe spiegare perché funziona in C # .NET 2.0: Nullable foo; if (true) foo = null; else foo = new DateTime(0); … ma questo non: Nullable foo; foo = true ? null : new DateTime(0); La seconda forma mi dà un errore di compilazione “Imansible determinare il tipo di espressione condizionale perché non esiste […]

Sorpresa di prestazioni con tipi “as” e nullable

Sto solo rivedendo il capitolo 4 di C # in Depth che tratta i tipi nullable, e sto aggiungendo una sezione sull’utilizzo dell’operatore “as”, che ti permette di scrivere: object o = …; int? x = o as int?; if (x.HasValue) { … // Use x.Value in here } Ho pensato che fosse davvero pulito, […]

Come verificare se un object è annullabile?

Come faccio a verificare se un dato object è annullabile in altre parole come implementare il seguente metodo … bool IsNullableValueType(object o) { … } EDIT: Sto cercando i tipi di valori nullable. Non avevo in mente tipi di ref. //Note: This is just a sample. The code has been simplified //to fit in a […]

Quale è preferito: Nullable . HasValue o Nullable ! = Null?

Ho sempre usato (a) Nullable.HasValue perché mi piaceva la semantica. Tuttavia, di recente stavo lavorando al codice esistente di qualcun altro in cui erano usati (b) Nullable != null esclusivamente. C’è una ragione per usare l’uno sull’altro o è puramente una preferenza? (un) int? a; if (a.HasValue) … (B) int? b; if (b != null) […]