2013-02-25 78 views
0

Web服務可以使用我在項目中使用的其他類,還是應該使用它自己的方法?Web服務是獨立的還是可以在課堂外使用的

謝謝!

+0

你問過之前有沒有試過它?當然可以。你有任何實際的問題,或者這只是一個通用的問題? – 2013-02-25 08:56:24

+0

我在本地主機上做過,但我不知道它是否可以在真正的服務器上運行,另外,我不知道約定是什麼。 – thormayer 2013-02-25 08:59:01

回答

1

做一個Web服務可以使用,我在該項目中的其他類?

是的,它可以。序列化後,您還可以返回您的自定義類對象。很不尋常的是,您會看到webservice只與原始類型(內部)進行交互。

1

您可以創建其他類的實例並使用它們來執行工作。

同一個項目或被引用項目中的任何類都應該可以使用,但需要遵守通常的訪問修飾符。

您將需要包含using語句。以下示例假設您要使用SomeClass駐留在MyAssembly.SomeLibrary: -

using MyAssembly.SomeLibrary; 


// in code block somewhere 
var thing = new SomeClass(); 

或完全限定類的名稱。

var thing = new MyAssembly.SomeLibrary.SomeClass(); 
1

這聽起來像你問最佳實踐而不是「這在技術上是可行的」。答案取決於你想要使用的類,但是總的來說,在Web服務中使用任何其他類或庫都是可以接受的,因爲這不會影響客戶端能夠使用該服務(即使用LibraryA on服務端並不意味着客戶端1還必須安裝LibraryA才能使用您的服務)。

可以重用這些類服務端(在Visual Studio中,通過勾選「引用程序集中的重用類型」框,在配置服務引用並添加對相應項目/ dll的引用時),但我通常會建議不要這樣做,因爲它會混淆事項 - 並非所有客戶在使用服務時都會訪問這些dll。

相關問題