こんにちは。
Windows10でASP.NETのアプリケーションを開発しています。
Visual Studio 2015 Communityを使っています。
###前提・実現したいこと
SQL文を書きたいです。
###試したこと
SQLデータベースから、is_deleted=0でStatus_codeが021 or 031のデータを検索したいです。
###発生している問題・エラーメッセージ
System.Data.SqlClient.SqlException はハンドルされませんでした。
Class=16
ErrorCode=-2146232060
HResult=-2146232060
LineNumber=1
Message=Invalid column name 'status_codes'.
Invalid column name '021'.
Number=207
Procedure=""
Server=ftmdbsrv-fftest.database.windows.net
Source=.Net SqlClient Data Provider
State=1
###該当のソースコード(1)
配列でとろうとしたが失敗。このほうがうれしい。
C#
1string[] statuscodes = new string[] { "021", "031" }; 2var sql = sqlstring; 3var param = new 4{ 5 StatusCodes = statuscodes, 6 IsDeleted = 0 7}; 8 9var results = DBClient.Connection.Query<table1>(sql, param, DBClient.Transaction);
sqlstring
SQL
1SELECT * 2 FROM [database].[table1] 3 WHERE [is_deleted] = 0 4 [status_codes] IN @StatusCodes
###該当のソースコード
まずひとつとってみようとかんがえた。
C#
1var sql = sqlstring; 2var param = new 3{ 4 IsDeleted = 0 5}; 6var results = DBClient.Connection.Query<table1>(sql, param, DBClient.Transaction);
SQL
1SELECT * 2 FROM [database].[table1] 3 WHERE [is_deleted] = 0 4 and [status_codes] = "021"
SQL
1/****** SSMS の SelectTopNRows コマンドのスクリプト ******/ 2SELECT TOP (1000) [id] 3 ,[id_kana] 4 ,[user_id] 5 ,[result] 6 ,[status_code] 7 ,[is_deleted] 8 ,[created_at] 9 ,[created_by] 10 ,[modified_at] 11 ,[modified_by] 12 FROM [database].[table1]
###補足情報(言語/FW/ツール等のバージョンなど)
Microsoft Visual Studio Community 2015
Version 14.0.25424.00 Update 3
Microsoft .NET Framework
Version 4.6.01038
インストールしているバージョン:Community
Visual C# 2015 00322-20000-00000-AA575
Microsoft Visual C# 2015
です。
よろしくお願いします。