WCF/REST我的POST有些问题

本文关键字:问题 POST 我的 REST WCF | 更新日期: 2023-09-27 18:30:05

当我使用windows表单应用程序进行POST时(第二次代码关闭),当我用buttonclick 2将学生集合获取到我的数据网格中时,没有任何显示我可以对成员进行硬编码,并且没有问题,但我不能POST?当我点击帖子的按钮1时,我得到的回复在消息框中说"可以吗?"?所以不太确定我做了什么。。。

    [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Xml, ResponseFormat = WebMessageFormat.Xml, UriTemplate = "")]
    void AddStudent(Student student);
            XDocument xDoc = XDocument.Load(uri);
            var students = xDoc.Descendants("Student")
                .Select(n => new
                {
                    StudentNo = n.Element("StudentID").Value,
                    Firstname = n.Element("FirstName").Value,
                    Surname = n.Element("LastName").Value
                })
                .ToList();
            dataGridView1.DataSource = students;
        }

WCF/REST我的POST有些问题

您是否以每次呼叫激活模式运行?如果是这样的话,每个客户端请求都会得到一个新的专用服务实例,所以每次都会将List<>重新创建为空。

请参阅此参考文章。在两次调用之间,您必须在缓存或数据库中保持您的列表。

您的服务正在执行您在代码中编写的操作。ListStudents不断返回相同的学生列表,AddStudent对该列表不做任何操作。

您的AddStudent没有添加到列表中

public void AddStudent(Student student)
{
    student.StudentID.ToString();
    student.FirstName.ToString();
    student.LastName.ToString();
}

GetStudentCollection返回相同的硬编码值。

static List<Student> students = new List<Student>();
public void AddStudent(Student student)
{
   students.Add(student);
}
public List<Student> GetStudentCollection()
{
    return students;
}