J'ai juste un point de curiosité. Je travaille avec SSRS et appelle ses méthodes SOAP. J'ai des stubs générés/des références Web créées et tout fonctionne bien et je peux faire des appels de service Web OK. Le problème: les deux classes générées à partir des WSDL, ReportService2005 et ReportExecution, ont des définitions de classes qui se chevauchent, telles que ParameterValue, DataSourceCredentials, ReportParameter. En C#, est-il possible de dire "Pour ce bloc de code dans la méthode, utilisez cet espace de noms?"C#: Utiliser un espace de nom pour un bloc de code spécifique?
Pseudo/la plupart du temps le code build-erreur:
use-this-namespace (ReportService2005)
{
ParameterValue[] values = null;
DataSourceCredentials[] credentials = null;
ReportParameter[] parameters;
}
Je comprends que je peux écrire le nom complet, ReportService2005.ParameterValue [] valeurs = null. Ou je peux alias les deux classes en haut avant ma déclaration de classe/contrôleur. C'est juste quelque chose que je suis curieux.
Cool. Merci les gars. Je trouve bizarrement amusant d'apprendre la syntaxe de différents langages. Je vais l'admettre, je suis un geek. – Jason
Un espace de noms par méthode serait particulièrement utile lorsque vous utilisez des bibliothèques qui fournissent des méthodes d'extension pour des types de base comme 'String' (par exemple Flurl [http://tmenier.github.io/Flurl/]) qui inonde Intellisense pour l'intégralité du fichier de code . – springy76