Est-il possible d'accéder à une variable d'instance, par l'intermédiaire d'une méthode statique?
En C#, il est possible d'accéder à une variable d'instance, par l'intermédiaire d'une méthode statique dans des classes différentes, sans l'aide du paramètre de passage?
Dans notre projet, j'ai un Data access layer
classe qui a beaucoup de méthodes statiques. Dans ces méthodes le SqlCommand
valeur de délai d'expiration a été codée en dur. Dans une autre classe(Dac
) dans notre cadre, il existe de nombreuses méthodes d'instance qui appeler ces méthodes statiques.
Je ne veux pas de code trop de l'aide de passage de paramètres. Avez-vous une autre solution qui est plus facile que le passage de paramètres?
Une méthode statique n'est associée à aucune instance alors, comment vous attendez-vous à savoir de quelle instance d'accéder à un membre de l'?
de quelle instance?
de quelle instance?
OriginalL'auteur mkus | 2010-07-30
Vous devez vous connecter pour publier un commentaire.
Oui, il est possible d'accéder à une variable d'instance à partir d'une méthode statique, sans l'aide d'un paramètre, mais seulement si vous pouvez y accéder via quelque chose qui est déclarée statique. Exemple:
oui...fait naître des souvenirs d'enfance des cauchemars!
OriginalL'auteur Mark Byers
Bien sûr, vous pourriez passer une instance en tant que paramètre à la méthode. Comme:
Mais il ne serait pas possible d'obtenir à tout les variables d'instance autrement.
OriginalL'auteur Jake Pearson
Une méthode statique n'a pas d'exemple de travailler avec, donc pas de. Il n'est pas possible sans passage de paramètres.
Une autre option pour vous serait d'utiliser une instance statique de la classe (Marque montre l'exemple de cette méthode de travail) bien que, à partir de votre exemple, je ne suis pas sûr que permettrait de résoudre votre problème.
Personnellement, je pense que la transmission de paramètres va être la meilleure option. Je ne suis toujours pas sûr de savoir pourquoi vous voulez fuir.
L'édition se résume à "je ne veux pas", ce qui n'est pas une bonne raison technique. L'alternative est vraiment vraiment mauvais, si ce n'est impossible.
OriginalL'auteur Justin Niessner
Oui, il peut, tant qu'il a une instance d'un objet dans le champ d'application.
Les Singletons par exemple, ou des objets créés à l'intérieur de la méthode elle-même..
Prenons l'exemple d'un scénario commun :
OriginalL'auteur Richard Friend
Non vous ne pouvez pas.
Si vous souhaitez accéder à une variable d'instance, alors votre méthode, par définition, ne doit pas être statique.
Avec un singleton, vous disposez d'une instance, et les méthodes ne seraient pas statique dans ce cas. Seule la méthode pour obtenir l'instance du singleton est statique.
OriginalL'auteur Brian R. Bondy