He resuelto este problema fácilmente. Ingresé al código de diseñador de mi conjunto de datos (dataset1.designer.vb
) y encontré los siguientes comandos, Me._commandCollection(0)
, Me._commandCollection(1)
a Me._commandCollection(5)
, porque tengo cinco comandos totales que se ejecutan en mi base de datos de SQL Server 2008. En cada uno (0 a 5) de estos comandos escribí Me._commandCollection(0).CommandTimeout = 60
, donde cambio 0 al siguiente número para los otros cuatro comandos. Cada uno de los cinco comandos tiene un bloque de código, de los cuales, dos bloques aparecen a continuación para proporcionar un ejemplo.
Me._commandCollection = New Global.System.Data.SqlClient.SqlCommand(5) {}
Me._commandCollection(0) = New Global.System.Data.SqlClient.SqlCommand()
Me._commandCollection(0).Connection = Me.Connection
Me._commandCollection(0).CommandTimeout = 60
Me._commandCollection(0).CommandText = "SELECT MK_QR_SUB_AND_DETAIL.*" & _ "Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)" & _ "FROM MK_QR_SUB_AND_DETAIL"
Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text
Me._commandCollection(1) = New Global.System.Data.SqlClient.SqlCommand()
Me._commandCollection(1).Connection = Me.Connection
Me._commandCollection(1).CommandTimeout = 60
Me._commandCollection(1).CommandText = "dbo.spQtrRptTesting_RunInserts_Step1of4"
Me._commandCollection(1).CommandType = Global.System.Data.CommandType.StoredProcedure
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@RETURN_VALUE", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.ReturnValue, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@pStartADate", Global.System.Data.SqlDbType.[Date], 3, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@pEndADate", Global.System.Data.SqlDbType.[Date], 3, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@pStartBDate", Global.System.Data.SqlDbType.[Date], 3, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@pEndBDate", Global.System.Data.SqlDbType.[Date], 3, Global.System.Data.ParameterDirection.Input, 10, 0, Nothing, Global.System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
Correcto, pero eso es lo que trato de evitar ... Individualmente es fácil de hacer ... Si tiene varios cientos de adaptadores de tabla para varios cientos de conjuntos de datos, en realidad no es muy viable. – Gary
No puedo pensar qué más podrías hacer. No hay una propiedad global CommandTimeout. Si lo hubiera, todavía tendría que establecer las propiedades individuales SqlCommand.CommandTimeout. –
¿Por qué no se puede ajustar la propiedad CommandTimeout en Dataset Designer? ¿Y por qué todavía son 30 segundos cuando cambio el tiempo de espera de conexión a 300 segundos? Por cierto, ¿cuál es la diferencia entre estos? Gracias de antemano ... –