Поставщик Microsoft OLE DB для драйверов ODBC: ошибка '80040e31'
[Microsoft] [Драйвер ODBC SQL Server] Истекло время ожидания
http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbcommand.commandtimeout.aspx
Попробуйте это:
commandObject.CommandTimeout = 120; // 120 seconds = 4 minutes
На вашем командном объекте. Вы также можете использовать значение «0», которое не указывает на время ожидания, см. Документацию.
Надеюсь, это поможет!