Otrzymuję błąd "Nie można niejawnie przekonwertować typu" int? " do "int". Istnieje wyraźna konwersja (czy brakuje Ci obsady?) "na moim OrdersPerHour na linii powrotnej. Nie jestem pewien, dlaczego, ponieważ moje umiejętności C# nie są tak zaawansowane. Każda pomoc będzie doceniona.Nie można niejawnie przekonwertować typu "int?" do "int".
static int OrdersPerHour(string User)
{
int? OrdersPerHour;
OleDbConnection conn = new OleDbConnection(strAccessConn);
DateTime curTime = DateTime.Now;
try
{
string query = "SELECT COUNT(ControlNumber) FROM Log WHERE DateChanged > #" + curTime.AddHours(-1) + "# AND User = '" + User + "' AND Log.EndStatus in ('Needs Review', 'Check Search', 'Vision Delivery', 'CA Review', '1TSI To Be Delivered');";
OleDbCommand dbcommand = new OleDbCommand(query, conn);
dbcommand.Connection.Open();
dbcommand.CommandType = CommandType.Text;
OrdersPerHour = (int?)dbcommand.ExecuteScalar();
Console.WriteLine("Orders per hour for " + User + " is " + OrdersPerHour);
}
catch (OleDbException ex)
{
}
finally
{
conn.Close();
}
return OrdersPerHour;
}
Teraz rozumiem mój błąd w tej części. Ale po wprowadzeniu tych zmian otrzymuję komunikat "Użytkownik nieprzypisanej zmiennej lokalnej" OrdersPerHour "na linii zwrotnej: – MaylorTaylor
@MaylorTaylor Zmień' int? OrdersPerHour; 'na' int OrdersPerHour = 0; ', powinien się tym zająć –
OK to naprawiło mnie, ale teraz mam inny problem. http://stackoverflow.com/questions/16744510/executescalar-always-returns-0 – MaylorTaylor