2010-09-11 25 views
1

我沒有使用Visual Studio 2010.我有一個類文件,我標記爲一個webmethod。 我能夠使用C#編譯器針對.NET 3.5框架進行編譯。使一個類成爲一個完整的web服務

如何使這個web服務?有任何想法嗎?

+0

有什麼原因你不使用WCF? – 2010-09-11 19:54:28

+0

如果我更瞭解它,我可以使用WCF。 – abhi 2010-09-12 01:56:30

回答

0

通常,當您將WebService用作Web項目時,會自動配置WebService。對於普通類庫,最好使用WCF類並使用OperationContract標記該類。

在WCF的情況下配置類庫也非常容易。

+0

如何在沒有Visual Studio的情況下做到這一點?我爲我的開發使用了Notepad ++。 – abhi 2010-09-12 01:55:53

+0

@abhi:爲什麼? Visual Studio Express 2010是免費的。 – 2010-09-12 19:51:06

+0

如果您仍然只想使用記事本,則需要從客戶端創建Soap請求主體,並請求服務器並解析從服務器獲得的Soap響應主體。您需要使用wsdl來解析成員。 – abhishek 2010-09-12 21:33:03

1

一般來說,這是一個壞主意。

Web服務通常設計爲以面向服務的方式進行操作。它期望通過網絡進行呼叫,並且考慮到這一點。

一個類通常被設計成與其方法的調用者在相同的進程中運行。例如,調用一個類的方法通常是便宜的,所以使用許多細粒度的方法來設計類是有意義的。調用Web服務通常會更昂貴,因爲這些調用通常會通過網絡進行。使用更少的粗粒度方法設計服務會更有意義。

Web服務通常應該設計爲無狀態。一般來說,一個班級可以保持狀態。一個例子是代表銀行賬戶的類。對於這樣的班級來說,保持帳戶餘額的總運行並在調用存款和提款方法時更改該總額非常合理。但是,您不希望通過網絡爲每筆交易調用存款和提款。相反,您可能會向服務發送一個Transaction對象列表,每個對象代表一個存款或提款。您可以通過單一操作將列表發送到服務,而不是通過網絡多次呼叫。