Web服务检索方法

时间:2012-03-26 22:24:35

标签: c# wcf web-services rest

我以前只用旧方式处理数据库查询,你可以这样做:

SELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_name

但在过去的几周里,我一直在学习有关wcf的web服务,并将wcf暴露为宁静。我想知道如果你采取这样的事情:

public class Student
{
    /**
     * Student matriculation number
     */
    [DataMember(Name = "matric")]
    public string Matric;
    /**
     * First name of the student
     */
    [DataMember(Name = "firstname")]
    public string FirstName;
    /**
     * Last name of the student
     */
    [DataMember(Name = "lastname")]
    public string LastName;
    /**
     * The programme that the student is on
     */
    [DataMember(Name = "programme")]
    public string Programme;
}

如果我有另一项服务,即每个学生都可以属于一个团体的团体,我可以专门搜索属于某个团体的学生,在使用xml存储时会怎样做?

有没有人知道一个好的教程或上面的例子,你可以加入两种类型的数据库或合同?

1 个答案:

答案 0 :(得分:1)

RESTful服务方法与您在SQL中连接表的方式并不真正相关。基本上你有4个CRUD操作 - 创建,检索,更新和删除。并且这些操作中的每一个都对应于HTTP协议动词。我认为他们是 -

GET - SELECT POST - 更新 PUT - INSERT 删除 - 删除

因此,根据您的操作,您可以通过在查询字符串中传递参数,通过特定的HTTP谓词调用WCF服务。例如。如果要删除ID = 5的记录,可以执行以下HTTP请求

DELETE /ServiceName.svc/Records/5

您实际需要的是通过ORM软件将数据库列映射到业务对象 - 例如Microsoft Entity Framework。我建议你从这里开始 - http://msdn.microsoft.com/en-us/library/bb386876.aspx