2011-11-18 18 views
1

最佳實現方法是什麼?將一個類引用爲一個Web服務

我正在構建將作爲Web服務託管的應用程序。這個應用程序需要一個employeeID並返回一個員工對象,其中包含許多關於該員工的信息。 (名稱,狀態,全職/兼職等)

我希望我們現有的兩個應用程序(還有更多)能夠調用Web服務將要使用的方法並返回僱員目的。 (同樣在返回對象的這個Web服務時,可能會添加新的字段 - 支付率等)

我該如何去從現有應用程序中的這個Web服務引用中創建一個新對象。

我會像Dim Employee as new emp_webservice.employee那樣去除它嗎?

然後就可以在應用程序中使用這個對象?或者更好的做法是否也包括相同的類文件?看起來這不會是要走的路,因爲如果我改變這個班,那麼我必須在所有地方做到這一點

感謝您對此的任何澄清。

回答

2

當您在.net應用程序中添加對Web服務的引用時,該Web服務公開的對象存在於您爲該Web服務添加到應用程序時爲其創建的名稱空間中。

因此,如您所指出的,任何對該Web服務中的類的引用都需要引用該Web服務的名稱空間。如果您不想完全符合每班的資格,您也可以有Imports WebServiceNameSpace

如果使用VS.Net提供的自動Web服務接口生成功能,則不能真正包含類文件。另外,如果更改Web服務中的屬性,那些更新的屬性將不會傳播到客戶端,除非更新項目中的Web服務引用。

最後,如果您想在客戶端的Web服務類中添加方法或附加屬性,則可以使用Partial類。

例如,假設Web服務只提供小時工資率,但我想在客戶端顯示每週工資。我可以擴展Web服務類如下:

Namespace emp_webservice 
    Partial Public Class employee 
     Public Function GetWeeklyPayRate() As Decimal 
      Return Me.HourlyRate * 8 * 5 
     End Function 
    End Class 
End Namespace 
相關問題