次の方法で共有


System.TimeSpan メソッド (LINQ to SQL)

System.TimeSpan のメンバー サポートは、使用している .NET Framework と Microsoft SQL Server のバージョンに大きく依存します。

メソッド、演算子、またはプロパティがサポートされていなければ、LINQ to SQL でメンバーを変換して SQL Server で実行することができません。 それでもこれらのメンバーをコードで使用することはできますが、 クエリが Transact-SQL に変換される前か、データベースから結果が取得された後で評価する必要があります。

以前の制限

.NET Framework 3.5 SP1 より前のバージョンの .NET Framework で LINQ to SQL を使用すると、SQL Server のデータベース フィールドを System.TimeSpan にマッピングできません。 ただし、TimeSpan 値を DateTime 減算から返したり、リテラル変数またはバインド変数として式に取り込んだりできるため、TimeSpan の操作はサポートされています。

サポートされている System.TimeSpan メソッド

LINQ to SQL でサポートされている以下のメソッド、演算子、およびプロパティは、LINQ to SQL のクエリで使用できます。 オブジェクト モデルまたは外部マッピング ファイルにマッピングされると、LINQ to SQL クエリ内で System.TimeSpan メンバーの多くを呼び出すことができます。

サポートされている TimeSpan メソッド

サポートされている TimeSpan 演算子

サポートされている TimeSpan プロパティ

Compare

Equality

Days

CompareTo(TimeSpan)

GreaterThan

Hours

Duration

GreaterThanOrEqual

MaxValue

Equals(TimeSpan, TimeSpan)

Inequality

Milliseconds

Equals(TimeSpan)

LessThan

Minutes

LessThanOrEqual

MinValue()

メモメモ

LINQ to SQL で System.TimeSpan を SQL の TIME 列にマッピングする機能を使用するには、.NET Framework 3.5 SP1 以降が必要です。SQL の TIME データ型は Microsoft SQL Server 2008 以降でのみ使用可能です。

加算と減算

加算と減算は、CLR の System.TimeSpan 型ではサポートされていますが、SQL の TIME 型ではサポートされていません。 そのため、LINQ to SQL クエリにより、SQL の TIME 型にマッピングしたときに加算や減算を試みると、エラーが発生します。 SQL の日付/時刻型の操作に関するその他の注意点については、「SQL と CLR の型マッピング (LINQ to SQL)」を参照してください。

参照

参照

SQL と CLR の型マッピング (LINQ to SQL)

その他の技術情報

LINQ to SQL のクエリの概念

オブジェクト モデルの作成 (LINQ to SQL)

データ型と関数 (LINQ to SQL)