1
我正在爲報告服務服務器集合構建自定義前端。我使用的是將ReportingServices2005 Web引用添加到我的項目中;報告服務Web服務,C#.NET代碼重用
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類的任何實例可以而不考慮命名空間的傳遞。此刻,我必須爲ReportingService2005和CatalogItem的所有引用指定Server1WebService。
從來沒有注意到財產!我以類似的方式解決了這個問題,方法是用一個新的URL以編程方式覆蓋配置緩存中的相關應用程序密鑰。雖然感覺像一個軟糖,我更喜歡這個答案。 – 2012-01-02 20:27:13