いくつかのレコードを選択するWindowsサービスがあります。アップデートと同じ接続を使用しているサーバー上で動作しています
using (SqlConnection conn = new SqlConnection(CMS.SettingsProvider.SqlHelperClass.ConnectionString))
{
conn.Open();
SqlCommand command = new SqlCommand("SELECT...", conn);
SqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
<snip>
build item IDs to update
}
UpdateRecords(conn, itemIDs);
}
}
EDIT
更新機能:それはこのように動作し、
private void UpdateRecords(SqlConnection Connection, List<int> ItemIDs)
{
SqlCommand command = new SqlCommand("update table...", Connection);
command.ExecuteNonQuery();
}
私はQAサーバでWindowsサービスとしてインストールし、それがレコードを更新しました。運用サーバーでは、レコードを更新していません。ログは更新手順が呼び出されていないことを示します。理由は何でしょうか?
ありがとうございます!
'UpdateRecords'は何ですか? SQLを実行していますか? –
あなたのコードを編集して、何か試してみて、例外メッセージが何であるか教えてください。また、UdateRecords(conn、itemIDs)がメソッドである場合は、そのメソッドのコードを表示してください – MethodMan
Readerからも更新するアイテムIDを作成すると、UpdateRecords内のフィールドに変数を割り当てていることを確認します。 itemIDsリストまたはString ..?それが文字列なら、whileループの中にUpdateRecords(Conn、itemIDs)を入れる必要があります –
MethodMan