System.TimeSpan metódusok
A tagok támogatása System.TimeSpan nagyban függ a használt .NET-keretrendszer és a Microsoft SQL Server verziójától.
Ha egy metódus, operátor vagy tulajdonság nem támogatott; ez azt jelenti, hogy a LINQ és az SQL nem tudja lefordítani a tagot végrehajtásra az SQL Serveren. Előfordulhat, hogy továbbra is használhatja ezeket a tagokat a kódban. Ezeket azonban a lekérdezés Transact-SQL-be való lefordítása vagy az eredmények adatbázisból való lekérése után kell kiértékelni.
Korábbi korlátozások
Ha a LINQ-t sql-hez használja a .NET-keretrendszer .NET-keretrendszer 3.5 SP1 előtti verzióival, az SQL Server-adatbázismezők nem rendelhetők hozzáSystem.TimeSpan. A műveletek TimeSpan azonban támogatottak, mert TimeSpan az értékek visszaadhatók kivonásból DateTime , vagy konstansként vagy kötött változóként egy kifejezésbe vezethetők be.
Támogatott System.TimeSpan-tagok támogatása
A LINQ-ban az SQL által támogatott alábbi módszerek, operátorok és tulajdonságok érhetők el, amelyeket a LINQ-ban használhat az SQL-lekérdezésekhez. Miután leképezte az objektummodellt vagy a külső leképezési fájlt, a LINQ-ból SQL-be meghívhatja a System.TimeSpan LINQ-ban lévő tagok nagy részét SQL-lekérdezésekre.
TimeSpan Támogatott metódusok | TimeSpan Támogatott operátorok | TimeSpan Támogatott tulajdonságok |
---|---|---|
Compare | Equality | Days |
CompareTo(TimeSpan) | GreaterThan | Hours |
Duration | GreaterThanOrEqual | MaxValue |
Equals(TimeSpan, TimeSpan) | Inequality | Milliseconds |
Equals(TimeSpan) | LessThan | Minutes |
LessThanOrEqual | MinValue |
Feljegyzés
Ahhoz, hogy a LINQ-t sql-hez rendelve sql-oszlopra TIME
képezhesse System.TimeSpan le, a .NET-keretrendszer 3.5 SP1-es vagy újabb verzióra van szükség. Az SQL-adattípus TIME
csak a Microsoft SQL Server 2008-ban és azon túl érhető el.
Összeadás és kivonás
Bár a CLR-típus System.TimeSpan támogatja az összeadást és a kivonást, az SQL-típus TIME
nem. Emiatt a LINQ-ból SQL-lekérdezések hibába ütköznek, ha összeadást és kivonást kísérelnek meg, amikor az SQL-típusra TIME
vannak leképezve. Az SQL-CLR típusleképezésben az SQL dátum- és időtípusainak használata során egyéb szempontokat is figyelembe kell vennie.