zoukankan      html  css  js  c++  java
  • 如何为Asp.net MVC web api生成Url?

    为某个Action生成Url, 可以使用Url.Action方法,就能得到针对某个Action的Url.

    但是web API呢? 好像没有Url.Api方法的。

    这里如果我们的web api的route是这样设置的:

      config.Routes.MapHttpRoute(
                    name: "DefaultApi",
                    routeTemplate: "api/{controller}/{id}",
                    defaults: new { id = RouteParameter.Optional }
                );

    那么我们可以这样得到web api的Url:

    Url.RouteUrl(
                "DefaultApi", 
                new{ httproute ="", controller ="values", id ="123"}
            );

    注意,这里的httproute设置非常重要,没有这个会导致Url为空。
    因为它回去寻找普通的Route匹配,由于找不到DefaultApi, 所以Url是空字符串。


    Creative Commons License

    本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名justrun(包含链接)。如您有任何疑问或者授权方面的协商,请给我留言

  • 相关阅读:
    一,安装python
    maven搭建ssm
    web优化
    java代码优化29个点
    供参考的 php 学习路线
    javascript-文档结构遍历
    jquery中的cookie使用
    jQuery中的Ajax
    lambda和抽象类
    上传jar包到nexus私服
  • 原文地址:https://www.cnblogs.com/JustRun1983/p/2707083.html
Copyright © 2011-2022 走看看