如何改写WebApi部分百度地图api 默认城市规则

C# 与 EF WebApi 不能调用方法
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.
我已经用一些 POCO 类创建一个 MVC 4 WebApi 应用程序,用于 EF 创建快速默认控制器具有读/写等。
现在因为某些原因我不能一起工作,但是是一个的第一个工程,EF 创建这两种方法。总之我想查找用户 Id 和用户名。
// GET api/xxx
public User GetUser(string id)
User user = db.Users.Find(id);
if (user == null)
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
上述工程。这不能。
// GET api/xxx
public User GetUserByUsername(string username)
var user = db.Users.First(s =& s.Username == username);
if (user == null)
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
但通过更改它有点以下,然后添加一些给 webapi 配置以下工作:
// GET api/xxx
[ActionName("username")]
public User GetUserByUsername(string id)
var user = db.Users.First(s =& s.Username == id);
if (user == null)
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
和对此更改 WebApiConfig:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
// Action-name
config.Routes.MapHttpRoute(
name: "ActionApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
我想知道为什么以前的方法不能在一起 (第 1 和第 2 次一个),我可以做什么,使其工作如果可能的话。我敢肯定有东西给它,因为它会显得有点奇怪不能够创建类似的方法。
解决方法 1:
使它工作在 DefaultApi 之后, 加入一个新的路由规则
// Routing by Action-name
config.Routes.MapHttpRoute(
name: "ActionApi",
routeTemplate: "api/{controller}/{action}/{username}",
defaults: new { username = RouteParameter.Optional }
和更改的方法如下:
// GET api/xxx/username
[ActionName("username")]
public User GetUserByUsername(string username)
var user = db.Users.FirstOrDefault(s =& s.Username == username);
if (user == null)
throw new HttpResponseException(
Request.CreateResponse(HttpStatusCode.NotFound));
我想我想得太多,傻,但现在看得很清楚。
通过添加新的路由应用的地方 {action} 到 routeTemplate 让感觉作为我,然后可以将属性添加 [ActionName("username")] 。然后我可以浏览 localhost:xxxxx/api/xxx/2 和 localhost:xxxxx/api/xxx/username/bob 这两个 GET 方法工作,因为第二个路由规则接受行动,使。
@Rob、 谢谢你的链接和提示虽然,感激 ! 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
作文改写的方法和原则
下载积分:30
内容提示:改写,就是对原文进行内容或形式的改变,是按照要求和需要把一..
文档格式:PDF|
浏览次数:154|
上传日期: 23:15:40|
文档星级:
该用户还上传了这些文档
作文改写的方法和原则
官方公共微信您的位置: >
使用Fiddler测试WebApi接口
学习标签:
本文导读:Fiddler是好用的WebApi调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler 是以代理web服务器的形式工作的,使用Fiddler无论对开发还是测试来说,都有很大的帮助。
Fiddler是一款由C#语言开发的免费http调试代理软件,Fiddler能够记录所有的你电脑和互联网之间的http通讯,Fiddler 也可以让你检查所有的http通讯,设置断点
一、Fiddler基本界面
二、会话请求列表的信息分别有
1、结果(Result)
2、协议(Protocol)
3、主机名(Host)
4、网页地址(URL)
5、内容大小(Body)
6、缓存(Caching)
7、响应的HTTP内容类型(Content-Type)
8、请求所运行的程序(Process)
9、注释(Comments)
10、自定义(Custom)
三、QuickExec命令行的使用
在Fiddler的左下角(即上图中标记为7)有一个命令行工具叫做QuickExec,允许你直接输入命令。
常见得命令有:
1、help& 打开官方的使用页面介绍,所有的命令都会列出来
2、cls&&& 清屏& (Ctrl+x 也可以清屏)
3、select& 选择会话的命令
4、?.png& 用来选择png后缀的图片
5、bpu& 截获request
四、数据查阅区Statistics tab
通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。 &选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化
五、测试 WebAPI get方法
Execute执行结果:
get方法查询单个
六、测试&WebAPI post方法
在请求头加上:
Accept:application/xml
Content-Type:application/json
七、测试&WebAPI put方法
八、测试&WebAPI delete方法
九、Fiddler如何捕获HTTPS会话
1、默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler& Tool-&Fiddler Options-&HTTPS tab
2、弹出如下的对话框,点击&YES&
3、弹出安全警告框,继续点击&YES&
十、如何在VS调试网站的时候使用Fiddler
在用visual stuido 开发ASP.NET网站的时候也需要用Fiddler来分析HTTP, 默认的时候Fiddler是不能嗅探到localhost的网站。不过只要在localhost后面加个点号,Fiddler就能嗅探到。
原本ASP.NET的地址是 http://localhost:2391/Default.aspx,& 加个点号后,变成 http://localhost.:2391/Default.aspx 就可以了
您可能感兴趣
一月好评排行榜&&国之画&&&&&&
版权所有 京ICP备号-2
迷上了代码!c#mvc中的webapi怎么迫使服务端返回字符串_百度知道

我要回帖

更多关于 webapi 路由规则 的文章

 

随机推荐