Primero, Object.ToString() es una función virtual en el objeto de la clase base. Cualquier clase puede anular ToString() para proporcionar su propia implementación. Convert.ToString() es un método estático que intenta tomar muchos argumentos diferentes y convertirlos en una cadena significativa. Además, Object.ToString() fallará si el objeto que lo llama es nulo.
Además, Object.ToString() no siempre convierte el objeto a la forma de cadena que podría esperar. Por ejemplo, la función base Object.ToString() siempre devolverá el nombre de tipo completo del objeto. Cualquier clase puede implementar ToString() como lo desee y esto no necesariamente tiene que ser algo significativo.
¿cuál es el tipo de dr [0]? –
Por lo que yo sé, ni 'Tostring()' ni 'tostring()' existen. C# distingue entre mayúsculas y minúsculas; ¿Se refiere a 'ToString', o tiene alguna otra función definida por el usuario? Muéstranos tu código fuente que causa el error y muéstranos el error. –
También puede haber el "problema" de 'DbNull' (que no es' nulo'); y es posible que necesite usar 'IsNull (col)', de lo contrario, el índice ('[col]') puede fallar IIRC. En cualquier caso, * incluya * información relevante: "recibir un error" es tan útil como "no funciona". –