【问题标题】:WEB API in asp.net web forms MapHttpRouteasp.net web 表单中的 WEB API MapHttpRoute
【发布时间】:2014-03-02 23:57:08
【问题描述】:

我已经为此绞尽脑汁了一段时间。我已经构建了一个 web api,现在我正在将它移动到一个 web 表单应用程序中。我读过的每个教程都说按照我尝试的方式去做。我也在网上查看了这个问题的答案,但他们都建议我已经尝试过的事情。我得到的错误是:

System.Web.Routing.RouteCollection does not contain a definition for MapHttpRoute

这是我的命名空间和我的 Application_Start 方法:

<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Web.Http" %>
<%@ Import Namespace="System.Web.Routing" %>

<script language="C#" runat="server">

void Application_Start(Object sender, EventArgs e) {


    RouteTable.Routes.MapHttpRoute(
           name: "apiCall",
           routeTemplate: "api/{controller}/{key}/{args}",
           defaults: new { args = System.Web.Http.RouteParameter.Optional }
       );

}

任何关于我做错了什么的帮助将不胜感激。

【问题讨论】:

    标签: c# asp.net webforms asp.net-web-api


    【解决方案1】:

    你确定你有正确的 using 语句吗?我想这就是你想要的:

    http://msdn.microsoft.com/en-us/library/hh835153(v=vs.118).aspx

    【讨论】:

    • 感谢您的回复。我试过了,看起来 System.Web.Http.HttpRouteCollection 不可用。我肯定引用了 System.Web.Http dll。
    • 为什么有 System.Web.Routing 命名空间?您应该使用一种类型或路线或其他。
    【解决方案2】:

    感谢您的帮助,但我最终通过 Visual Studio 将我的 web api 添加到我的项目中,并且它自行修复了。我刚刚尝试在 Windows 资源管理器中添加。

    【讨论】:

      【解决方案3】:

      我遇到了这个问题,我通过添加这个程序集引用来解决它: System.Web.Http.WebHost

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-21
        • 1970-01-01
        • 2020-06-04
        • 2018-02-05
        • 1970-01-01
        • 2018-08-08
        • 1970-01-01
        • 2020-11-29
        相关资源
        最近更新 更多