Я создаю пользовательский интерфейс для набора серверов служб отчетов.Я добавляю веб-ссылку ReportingServices2005 в свой проект, используя:
http://server/ReportServer_InstanceName/ReportService2005.asmx?wsdl
В настоящее время мой подход заключается в добавлении этой ссылки для каждого сервера, однако я тогда борюсь саспект повторного использования кода.Тогда классы служб отчетов - это разные пространства имен.
Я хотел бы иметь метод, описанный ниже;
public string ListReports(Server1WebService.ReportingService2005 service) {
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
service.Server1WebService.CatalogItem[] children = service.ListChildren("/", true);
string list = String.Empty;
foreach (Server1WebService.CatalogItem i in children) {
if (!i.Hidden)
list += i.Name + "</br>";
}
return list;
}
Чтобы сделать этот метод многократно используемым, мне нужно знать, как его реорганизовать так, чтобылюбой экземпляр класса ReportingService2005 может быть передан независимо от пространства имен.На данный момент я должен указать Server1WebService для всех ссылок на ReportingService2005 и CatalogItem.