Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Les valeurs Linq to SQL DateTime sont locales (Kind=Unspecified) - Comment puis-je le rendre UTC ?

Le code LinqToSql généré fournit des points d'extensibilité, vous pouvez donc définir des valeurs lorsque les objets sont chargés.

La clé est de créer une classe partielle qui étend la classe générée, puis d'implémenter le OnLoaded méthode partielle.

Par exemple, disons que votre classe est Person , vous avez donc un Person partiel généré classe dans Blah.designer.cs .

Étendez la classe partielle en créant une nouvelle classe (doit être dans un fichier différent), comme suit :

public partial class Person {

  partial void OnLoaded() {
    this._BirthDate = DateTime.SpecifyKind(this._BirthDate, DateTimeKind.Utc);
  }
}