РЕДАКТИРОВАТЬ - Обновлено в ответ на ваш ответ:
URL-адрес "http://localhost/test/Test.svc/MethodName"
postData - это данные, которые вы хотите передать в качестве параметра.
В вашем случае этопохоже, что вы пытаетесь передать тип. Помните, что это публикуется в URL. Разбейте значения типа на параметры.
Пример: "http://localhost/test/Test.svc/Create?id=123456&stringValue=newSampleItem"
Нужно изменить Операционный контракт, чтобы он принимал int и строку вместо SampleItem.
[WebInvoke(UriTemplate = "Create?id={x}&stringValue={y}", Method = "POST"), OperationContract]
public SampleItem Create(int id, string stringValue)
{
// Create and return the Sample Item.
}
Дайте мне знать, как это происходит.
Патрик.
Привет Алекс, Это то, что я использую для публикации в службе Restful ...
// Create the request
WebRequest request;
request = WebRequest.Create(url + postData);
request.Method = "POST";
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
// Get the request stream.
Stream dataStream = request.GetRequestStream();
// Write the data to the request stream.
dataStream.Write(byteArray, 0, byteArray.Length);
// Close the Stream object.
dataStream.Close();
// Process the response
Stream responseStream;
responseStream = request.GetResponse().GetResponseStream();
StreamReader objReader = new StreamReader(responseStream);
StringBuilder sb = new StringBuilder();
string sLine = "";
int i = 0;
while (sLine != null)
{
i++;
sLine = objReader.ReadLine();
sb.Append(sLine);
}
responseStream.Close();
string responseXML = sb.ToString()
Удачи,
Патрик