次の問題があります。指定された値でデータベースからビジネスを取得します。フィールドbusinessno
は整数型です。以下コードです
ObjectQuery<BUSINESS> q_business =
_context.BUSINESS.Include("CUSTOMSOFFICE").Where(
"it.BUSINESSNO=" + int.Parse(pv_businessno)).Where(
string.Format("(it.BUSINESSSTART >= DATETIME'{0:yyyy-MM-dd HH:mm}')
and (it.BUSINESSSTART <= DATETIME'{1:yyyy-MM-dd HH:mm}')",
pv_sdate, pv_edate));
それにもかかわらず、ユーザーは値を指定し、businessno
その値のようなデータベースからデータを取得する必要があります。
私はインターネットを検索し、最終的に次のようにコードを書き直しました。の完全な値が提供されない限り、このコードはレコードを取得しませんbusinessno
。
ObjectQuery<BUSINESS> q_business =
_context.BUSINESS.Where(
"CAST(it.BUSINESSNO as System.String) like @abc", new ObjectParameter("abc", busno)).Where(
string.Format("(it.BUSINESSSTART >= DATETIME'{0:yyyy-MM-dd HH:mm}')
and (it.BUSINESSSTART <= DATETIME'{1:yyyy-MM-dd HH:mm}')",
pv_sdate, pv_edate));
私の問題は、数値を文字列に変換する方法です。