Comment définir un champ sur DBNull dans Entity Framework

dbnull entity-framework

Question

Comment définir un champ sur DBNull dans Entity Framework? Les champs sont fortement typés, vous ne pouvez donc pas le définir égal à DBNull.Value et je n'ai trouvé aucune méthode pour définir un champ sur DBNull. Il semble que ce soit une chose nécessaire à faire, mais après de nombreuses recherches sur Google, je n'ai rien trouvé à ce sujet.

J'essaie de définir un champ date / heure dans Entity Framework à l'aide de vb.net. Cela nécessite que j'écrive

 myEntity.mydate = Nothing

Cela ne définit pas le champ sur null, mais plutôt la valeur de date par défaut, qui n'est pas une valeur valide dans SQL Server.

Réponse acceptée

Si une colonne est nullable dans la base de données, la classe de résultat aura également une propriété nullable.

Par exemple, si une table Order a une colonne Datetime appelée CreatedDate , la classe Order résultante ressemblera à ceci:

public partial class Order: EntityObject
{
  ...
  private DateTime? _createdDate;
  ...
}

Si le _ createdDate n'a aucune valeur lorsque vous appelez ObjectContext.SaveChanges() un System.DBNull sera automatiquement envoyé à la base de données dans le cadre de la commande insert ou update.

J'espère que ça aide Alex


Réponse populaire

Définissez la valeur du champ sur null . Entity Framework traduira cela en System.DBNull .



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi