私はEntity Framework 4.1でMVC3を使用しています。会社名の最初の文字でページングされるグリッドがあります。私はそれが素晴らしい仕事をしていますが、いくつかの企業は数字で始まります。選択した番号から開始する会社を取得するために、次のLINQクエリを使用していますが、番号で始まる会社を選択するにはどうすればよいですか?Entity Framework:フィールドが数字で始まるところ
var b = (from c in dbContext.Companies
where c.CompanyName.StartsWith(selectedCharacter)
select c)
私が試してみた:それはSQLに変換する方法を知らないので、私はエラーを取得し、
where char.IsNumber(l.CompanyName[0])
をしかし。
編集:私はちょうど行うことができることを知っている.CompanyName.StartsWith( "1")|| .CompanyName.StartsWith( "2")など。より良い方法はありますか? 。 すべてのアイデア?
また、c.CompanyName.StartsWith(selectedCharacter)の問題はselectedCharacterとして '1'、 '2' ......... – Incognito
質問を投稿して以来、私は.CompanyName.StartsWith( "1 ")|| .CompanyName.StartsWith( "2")とおそらく最善の方法ですが、それはちょうど反復的に思えました。 SQLはあなたが期待するものです WHERE([Extent1]。[CompanyName] LIKE '1%')OR([Extent1]。[CompanyName] LIKE '2%')OR([Extent1]。[CompanyName] LIKE '3%')..など – Jamiegs