我習慣了使用在其中添加服務引用SOAP服務,它創造強類型的類的每個方法(返回類型)..使用Visual Studio 2010消費WCF Rest服務?
當然REST不喜歡這個
工作,我該怎麼辦使用WCF REST服務?
有沒有辦法使用強類型的返回類型?
我使用Visual Studio 2010中專門
任何意見或想法真的很感激
在此先感謝
我習慣了使用在其中添加服務引用SOAP服務,它創造強類型的類的每個方法(返回類型)..使用Visual Studio 2010消費WCF Rest服務?
當然REST不喜歡這個
工作,我該怎麼辦使用WCF REST服務?
有沒有辦法使用強類型的返回類型?
我使用Visual Studio 2010中專門
任何意見或想法真的很感激
在此先感謝
見Is there a WCF Rest C# Client Generation Tool?。如果您擁有服務和客戶端,則可以重新使用合約並使用WebChannelFactory實例化客戶端通道。
如果您打算使用.net合約和(de)序列化到.net類型的電線兩端,爲什麼要打擾REST綁定? wshttpbinding不是一個更好的選擇嗎? – 2010-08-07 20:13:47
我的觀點是遠離SOAP ......我不使用它提供的一半東西,所以我只想把數據返回到對象中,而不是通過XML和方法ReadAsDataContract ..這是現在排序 – 2010-08-07 20:25:33
@mark好的,所以你可以自由地給我打電話迂腐,但你要做的不是REST。我並不是說這不是一種有效的方法,只是要意識到,當有人說「你不能這樣做,它不是RESTful」時,你可以自由地忽略它們:-) – 2010-08-07 20:37:23
// It is used to call the webservice url
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://careernet.localhost/rep-details/report_details/retrieves");
request.Method = "POST";
request.ContentType = "application/json";
request.Accept = "application/json";
try
{
WebResponse response = request.GetResponse();
Stream responseStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(responseStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
// ...
我希望它能爲你工作。
不,不是真的 - 當真的沒有機器可讀的服務定義(比如帶有SOAP的WSDL/XSD)時,您會如何創建強類型類......這是我認爲REST的一大缺點 - 您只是回來一個角度支架湯,你必須希望有一些有用的文件描述的地方...... – 2010-08-07 17:23:21
@marc_s其實服務,聲稱是RESTful,並提供一個「一勺湯勺」完全有錯過了REST的自我描述約束和精確媒體類型的重要性。 – 2010-08-07 20:15:38
Darrel,我現在工作..在響應對象上使用ReadAsDataContract .. – 2010-08-07 20:24:27