当我尝试从我的服务中删除时,我找不到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)));
}
答案 0 :(得分:1)
默认情况下,未启用DELETE Http Verb。阅读this如何修复它。
答案 1 :(得分: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);