2012-01-06 9 views
1

Hereにソートするカラムの型をキャスト偉大な人はLinq2Sqlでそれを行うことが可能である別のキャストでがLinq2Sql

をテーブルをソートするオプションを与えましたか?

+1

詳細情報が必要 – gbn

答えて

1

これは、SQLクエリを文字列として使用しないとクライアント側でのみ機能します。

例えば

(私はいくつかのフィールドを作ってるんだ):

(from c in db.Customers 
select c).ToList() //ToList executes the query 
     .OrderBy(c => c.CreditLimit.ToString()) 
     .OrderBy(c => double.Parse(c.CustomerId)) 
     //etc 

更新:あなたがこのサーバー側を実行する必要がありそうです:

context.ExecuteQuery(typeof(TestTable1), "SELECT * FROM 
TestTable1 ORDER BY CAST(Text1 as bigint)"); 

はあなたを得るために、SQLクエリを使用しますオブジェクトはLinq-to-SQLがあなたの要件をサポートしていないためです。

+0

エラー:メソッド 'Double Parse(System.String)'にはSQLへの変換がサポートされていません。 – Yacov

+1

だからこそ、あなたはまずToListをやるのです! – Bas

+0

私は完全なリストを取得したくありません - それは非常に大きいです - キャスティングがDBエンジンで行われるようにしたい(クエリの最後に40行しかかかりません) – Yacov

関連する問題