Normaly Я бы использовал либо «Использование», либо просто connection.open() и connection.close(). Но когда я звоню в хранимую процедуру, это не нужно. Как так? (Да, код, приведенный ниже, работает без использования или открытия).Connection.Open() необходимо при вызове хранимой процедуры?
try {
SqlCommand cmd = new SqlCommand("***", connectionSiteDb);
DataTable dt = new DataTable();
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@ProcessSegmentID", ProcessSSegmentID));
cmd.Parameters.Add(new SqlParameter("@PO_RecipeID", PO_RecipeID));
cmd.Parameters.Add(new SqlParameter("@ProductSegmentVersion", ProductSegmentVersion));
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
da.Fill(dt);
return dt;
}
catch (Exception e) {
Console.WriteLine(e);
return null;
}
Вы проверили свойство связи? Состояние соединения закрыто? –
перед процедурой вызова. Закройте свое соединение. – Kishan
Это SqlDataAdapter. При необходимости он откроет соединение. – Mithrandir