Tout d'abord "tout-objet en tant que chaîne de caractères" et "tout-objet.ToString()" sont deux choses complètement différentes en fonction de leur contexte respectif.
string str = any-object as string;
1) Ce sera un cast d'un objet comme type de chaîne et si aucun objet n'est pas moulage à cordes, alors cette déclaration va retourner la valeur null sans jeter de l'exception.
2) C'est un compilateur-service.
3) Cela fonctionne assez bien pour toute autre type autre que chaîne de caractères, ex: vous pouvez le faire comme tout objet en tant qu'Employé, où un Employé est une classe définie dans votre bibliothèque.
string str = any-object.ToString();
1) Cela appel à ToString() de tout objet de type defination. Depuis Que Le Système.Objet définit la méthode ToString() de toutes les classes .Net framework est la méthode ToString() pour plus de l'équitation. Le programmeur va l'emporter sur la ToString() dans une quelconque classe d'objet ou structure defination et écrire le code de retour de chaîne de caractères de la représentation de tout objet en fonction de la responsabilité et du rôle joué par n'importe quel objet.
2) Comme vous pouvez définir une classe à l'Employé et plus-ride méthode ToString() qui peut renvoyer des Employés de l'objet de représentation de chaîne comme "PRÉNOM - NOM de famille, EMP-CDOE" .
Notez que le programmeur a le contrôle sur ToString() dans ce cas et il n'a rien à voir avec le moulage ou la conversion de type.