Question

Comment définissez-vous 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. Cela semble être 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.

Était-ce utile?

La solution

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 contient une colonne Datetime nullable appelée CreatedDate , la classe Order résultante will ressemble à 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 cela aide Alex

Autres conseils

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

Je n'ai jamais utilisé entity-framework, mais pouvez-vous transformer une variable en un type nullable?

quelque chose comme

dim entityVar as nullable(of date)

alors vous pouvez faire le = rien et il ne restera rien.

mais comme je l'ai dit, je n'ai jamais utilisé d'entité-cadre

en cherchant sur google, j'ai constaté que un rapport de bogue sur Microsoft Connect

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top