2
같은 질문에 대한 여러 가지 대답이 있지만 광산을 해결할 수없는 것을 알고 있습니다. 여러분 중 누구라도 제 코드를 살펴보고 문제를 해결할 수 있습니까? 나는 다음과 같이 POST 방법WCF 게시 방법, 400 잘못된 요청 반환
을은 WCF 서비스를 만든인터페이스 (iComplaints.cs)
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json, UriTemplate = "/insertcomplaint")]
Stream InsertComplaint(ComplaintData data);
클래스 (Complaints.cs)
public Stream InsertComplaint(ComplaintData data)
{
//the code
}
를 DataContract 클래스 (ComplaintData)
public class ComplaintData
{
[DataMember]
public string ComplaintID { get; set; }
[DataMember]
public string EntryBy { get; set; }
}
나는 service loc 동맹과 내가 아래 클라이언트 방법은 나에게 400 (잘못된 요청)를 제공 년대 WCF 서비스
<service behaviorConfiguration="ServiceBehavior" name="Complaints">
<endpoint address="" behaviorConfiguration="webHttp" binding="webHttpBinding" contract="IComplaints" />
<endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />
</service>
하십시오 누구의 도움
void PostComplaint()
{
HttpWebRequest req = null;
HttpWebResponse res = null;
string url = "http://localhost:28522/Complaints.svc/insertcomplaint";
ComplaintData iData = new ComplaintData();
iData.ComplaintID = txtComplaintID.Text;
iData.EntryBy = txtEntryBy.Text;
req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/json";
req.Headers.Add("SOAPAction", url);
using (var streamWriter = new StreamWriter(req.GetRequestStream()))
{
streamWriter.Write(iData);
}
res = (HttpWebResponse)req.GetResponse();
using (var streamReader = new StreamReader(res.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
TextBox1.Text = result;
}
}
웹 구성을 사용하여 소비 할 때.
@Sajeetharan가 : 심각 아니 ... 나는 당신이 감지 할 수 있다면 어딘가 잘못하고 있어요 알고있다. –