私はSQL出力句を使用してデータベースから新しく挿入されたレコードのIDを取得しようとしています、すなわち挿入された行のIDを取得
insert into table1(forename, surname) output inserted.id values(@forename, @surname)
と私はこのようなIDを捕獲しようとしています:
Int32 id = (int)command.ExecuteScalar;
これは私にエラーメッセージ与えている:
Compiler Error Message: CS0428: Cannot convert method group 'ExecuteScalar' to non-delegate type 'int'. Did you intend to invoke the method?
ない私が間違っているのかわからを。ここで
は、既存のコードの大規模な抽出物である:
using (connection = new SqlConnection(ConfigurationManager.AppSettings["connString"]))
{
using (command = new SqlCommand("insert into table1(forename, surname) OUTPUT INSERTED.ID values(@forename, @surname)", connection))
{
command.Parameters.Add("@forename", SqlDbType.VarChar, 255).Value = forename;
command.Parameters.Add("@surname", SqlDbType.VarChar, 255).Value = surname;
command.Connection.Open();
id = (int)command.ExecuteScalar;
}
}