2012-04-11 82 views
0

我收到没有找到404当我尝试从我的服务,DELETE,在客户端我用这个:404未找到当我尝试从我的服务时删除

在我的服务端我用这个:

[OperationContract] 
    [WebInvoke(Method = "DELETE", BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml, UriTemplate = "/Student")] 
    void removeStudent(Student studentID); 

    List<Student> students = new List<Student>(); 
    public void removeStudent(Student studentID) 
    { 
     students.Remove(students.Find(f => f.StudentID.Equals(studentID))); 
    } 

回答

1

根据我上面看到的,您将一些文本传递给客户端的URL但期望Student对象看起来不正确。

我认为约定是DELETE应该具有与GET相同的URI模板。

[WebInvoke(Method = "DELETE", BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml, UriTemplate = "/{studentID}")] 
    void removeStudent(string studentID); 

void removeStudent(int studentID); 
+0

已经forgoten的{串}在感谢端PS。 – 2012-04-11 19:43:30

1

默认情况下,DELETE Http Verb未启用。阅读this如何解决它。

相关问题