MVC4 WebAPIWord格式文档下载.docx

上传人:b****5 文档编号:17636474 上传时间:2022-12-07 格式:DOCX 页数:11 大小:450.63KB
下载 相关 举报
MVC4 WebAPIWord格式文档下载.docx_第1页
第1页 / 共11页
MVC4 WebAPIWord格式文档下载.docx_第2页
第2页 / 共11页
MVC4 WebAPIWord格式文档下载.docx_第3页
第3页 / 共11页
MVC4 WebAPIWord格式文档下载.docx_第4页
第4页 / 共11页
MVC4 WebAPIWord格式文档下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

MVC4 WebAPIWord格式文档下载.docx

《MVC4 WebAPIWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《MVC4 WebAPIWord格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。

MVC4 WebAPIWord格式文档下载.docx

时,框架将自动为它提供OData查询支持——使其易于分页和排序。

(4)模型绑定和验证:

模型绑定器提供了一种简单的方法来从HTTP请求中的不同部分提取数据,并将这些信息部分转换为WebAPI行为可使用的.NET对象。

WebAPI支持相同的模型绑定和ASP.NETMVC现今支持的验证基础结构。

(5)路由:

WebApI支持完整的路由功能集。

现今ASP.NETMVC和ASP.NET也支持这一点,包括路线参数和约束。

默认情况下,WebAPI还提供了智能公约,使你能够轻松地创建实现WebApI的类,而无需不得不将属性应用到你的类或方法中。

WebAPI的配置纯粹是通过代码来实现的——保持你的配置文件干净。

(6)筛选器:

WebApI使你能够轻松地使用和创建筛选器(例如:

[授权]),那样你能够封装和应用交叉行为。

(7)改进的可测试性:

与其在静态文本对象中设置HTTP的详细信息,不如将WebAPI行为与HttpRequestMessage和HttpResponseMessage一起使用——两个新的HTTP对象(在其他内)使测试更容易。

例如,你可以单元测试你的WebApI,而无需不得不使用Mocking框架。

(8)IoC支持:

WebAPI支持由ASP.NETMVC实现的服务定位器模式,使你能够解决不同设备的依赖。

你可以轻松地使用IoC容器或依赖注射架构来集成,以保持干净的依赖解决方案。

(9)灵活的托管:

WebApI可以托管在任何类型的ASP.NET应用程序内(包括这两个基于应用程序的ASP.NETMVC和ASP.NETWebForms)。

我们还设计了WebAPI支持,这样,你还可以选择在你自己的进程内托管/公开它们,如果你不想使用ASP.NET/IIS来这样做。

至于你如何以及在哪儿使用它,这给了你最大的灵活性。

3.创建一个WebAPI程序

启动VS2012创建一个新项目,在已经安装的模板中选择ASP.NETMVC4WebAPI程序

在ASP.NETMVC项目对话框中选择WebAPI项,点击确定 

创建成功之后工程中会自动添加一个WebAPI服务控制器,上面并附带访问地址 

项目解决方案,选择Models文件夹右键添加一个Model类 

代码如下:

namespace 

Git.Framework.WebAPI.Models

{

public 

class 

Contact

int 

ID 

get;

set;

}

string 

Name 

Sex 

DateTime 

Birthday 

Age 

}

工程解决方案选择Controllers文件夹右键添加一个新的WebAPIcontroller

在添加控制器弹出对话框中选择模板:

空API控制器

控制器中添加如下代码:

Git.Framework.WebAPI.Controllers

ContactController 

:

ApiController

Contact[] 

contacts 

new 

Contact(){ 

ID=1, 

Age=23, 

Birthday=Convert.ToDateTime("

1977-05-30"

), 

Name="

情缘"

 

Sex="

男"

},

ID=2, 

Age=55, 

1937-05-30"

令狐冲"

ID=3, 

Age=12, 

1987-05-30"

郭靖"

ID=4, 

Age=18, 

1997-05-30"

黄蓉"

女"

};

/// 

<

summary>

/api/Contact

/summary>

returns>

/returns>

IEnumerable<

Contact>

GetListAll()

return 

contacts;

/api/Contact/id

param 

name="

id"

>

/param>

Contact 

GetContactByID(int 

id)

contact 

contacts.FirstOrDefault<

(item=>

item.ID==id);

if 

(contact 

== 

null)

throw 

HttpResponseException(HttpStatusCode.NotFound);

contact;

根据性别查询

/api/Contact?

sex=女

sex"

GetListBySex(string 

sex)

contacts.Where(item 

=>

item.Sex 

sex);

}}

4.浏览器访问API路径

ControllerMethed

URI

GetListAll

GetListBySex

"

sex="

+sex

GetContactByID

/api/Contact/"

+id

在IE浏览器中浏览出现如下效果

如果在Chrome或者FireFox中浏览会先下如下效果

5.Javascript访问WebAPI

在项目中添加一个AboutView视图

@{

Layout 

null;

!

DOCTYPE 

html>

head>

meta 

viewport"

content="

width=device-width"

/>

title>

About<

/title>

script 

type="

text/javascript"

src="

/Scripts/jquery-1.7.1.min.js"

/script>

text/ecmascript"

$(document).ready(function 

() 

$("

#btnAll"

).click(function 

$.getJSON("

/api/Contact"

function 

(data) 

var 

html 

ul>

;

$(data).each(function 

(i, 

item) 

+= 

li>

+item.ID+"

+item.Name+"

+item.Sex+"

/li>

});

/ul>

#contactAll"

).html(html);

#btnID"

id 

#txtID"

).val();

+id, 

item.ID 

item.Name 

#contactID"

#btnSex"

sex 

#ddlSex"

sex, 

#contactSex"

/head>

body>

p>

input 

button"

id="

btnAll"

value="

查询所有"

&

nbsp;

/p>

text"

txtID"

btnID"

根据ID查询"

select 

ddlSex"

option 

男<

/option>

女<

/select>

btnSex"

根据性别查询"

div 

contactAll"

/div>

contactID"

contactSex"

/body>

/html>

运行结果效果图

6.WebAPI总结

1.WebAPI控制器(Controller)继承ApiController

2.Api的UrlMap:

api/{controller}/{id}每个"

Action"

是通过Http谓词(GET/POST/PUT/DELETE)映射的

3.客户端可以通过HttpHeader的Accept指定返回数据的格式。

默认是支持:

appliction/xml和application/json,当想返回比如image/jpeg这样的图片格式时,需要添加MediaTypeFormatter 

比如:

当指定某个Task时,通过指定Accept:

image/jpeg获取该Task的图片信息。

(后面详细介绍)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1