la conversione di un tipo di dati varchar in un tipo di dati datetime ha comportato un valore fuori intervallo

Ho il seguente pezzo di SQL inline che eseguo da un servizio Windows C #:

UPDATE table_name SET status_cd = '2', sdate = CAST('03/28/2011 18:03:40' AS DATETIME), bat_id = '33acff9b-e2b4-410e-baaf-417656e3c255', cnt = 1, attempt_date = CAST('03/28/2011 18:03:40' AS DATETIME) WHERE id = '1855' 

Quando eseguo questo su un database SQL Server dall’interno dell’applicazione, viene visualizzato il seguente errore:

System.Data.SqlClient.SqlException: la conversione di un tipo di dati varchar in un tipo di dati datetime ha comportato un valore fuori intervallo. La dichiarazione è stata chiusa.

Ma se prendo il pezzo di SQL e lo eseguo da SQL Management Studio, funzionerà senza problemi.

Qualche idea su cosa potrebbe causare questo problema?