HTTP GET 请求用于从 ADO.NET 数据服务中检索数据。任何可发送 HTTP 请求的应用程序都能够与 ADO.NET 数据服务部署的数据进行交互。
本主题中的示例初始化并发送一个 GET 请求,该请求查询 SQL Server 2005 附带的 AdventureWorks 示例数据库中的数据。如数据服务快速入门(ADO.NET 数据服务框架) 中所示,已使用实体数据模型 部署这些数据。
GET 方法
下面的代码显示针对使用 GET
方法的 HttpWebRequest 对象的初始化。HttpWebRequest 的 Accept
属性设置为 application/json
,以指定 JSON 协议中的结果。此数据由 HttpResponse 对象(通过调用 request.GetResponse
初始化该对象)返回,然后读入到名为 output
的 StringBuilder 中。
HttpWebRequest request =
(HttpWebRequest)WebRequest.Create(
"http://hostName/AdvWksSales.svc/Contact(456)");
request.Method = "GET";
request.Accept = "application/json";
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
StringBuilder output = new StringBuilder();
output.Append(reader.ReadToEnd());
response.Close();
结果
output
字符串包含格式为 JSON 的结果:
{ "d" : {
"__metadata": {
"uri": "https://localhost:57678/AdvWksSales.svc/Contact(456)",
"type": "AdventureWorksModel.Contact"},
"ContactID": 456,
"NameStyle": false,
"Title": "Ms.",
"FirstName":
"Susan",
"MiddleName":
"F.", "LastName": "Burk",
"Suffix": null,
"EmailAddress": "sfburk@adventure-works.com",
"EmailPromotion": 2,
"Phone": "165-555-0172",
"PasswordHash": "8Qm1PjIUHrwqWDY8nMVfB4qUnizpmFJfhn9mkV3kwo8=",
"PasswordSalt": "5uLI9TQ=",
"AdditionalContactInfo": null,
"rowguid": "baf2bb1f-fef8-4f13-9f21-e8d92e15f790",
"ModifiedDate": "\/Date(1028160000000)\/"
, "SalesOrderHeader": {
"__deferred": {
"uri": "http://hostName/AdvWksSales.svc/Contact(456)/SalesOrderHeader"
}
}
} }
另请参见
概念
HttpWebRequest PUT(ADO.NET 数据服务框架)
HttpWebRequest POST(ADO.NET 数据服务框架)
HttpWebRequest DELETE(ADO.NET 数据服务框架)
通用 HTTP 要求(ADO.NET 数据服务框架)
.NET 客户端库(ADO.NET 数据服务框架)