2016-08-09 13 views
0

私はタイプINTの列MyColumnを持っていると私はその列「指定したキャストは無効です」と表示されるのはなぜですか?

dbはタイプ DataContextである
string selectQuery = [email protected]" SELECT [MyColumn] FROM [dbo].[MyTable] 
         WHERE [Id] IN ('{testid_1}','{testid_2}','{testid_3}') 
         ORDER BY [MyColumn]"; 

var vals = mydb.ExecuteQuery<int?>(selectQuery).ToList(); 

でいくつかの行を取得しています。

なぜこれが私に無効なキャスト例外を与えているのですか?

+0

えーえにVARCHARタイプをキャストしようとしている下の行のです!私はJon Skeetをスパイ! –

+0

あなたのフィールドはnullではないと言っていますが、nullable intにキャストしています。どうして?まだ –

+0

。あなたのフィールドはnullableかどうか? (あなたがテキストからnullを削除したのを見た) –

答えて

6

ので、INT

WHERE [Id] IN ('{testid_1}','{testid_2}','{testid_3}') 
関連する問題