C# ASP.NETWebAPI MapHttpRoute在VisualStudio上工作,但不';不能在Web表单应用程序中使用IIS

C# ASP.NETWebAPI MapHttpRoute在VisualStudio上工作,但不';不能在Web表单应用程序中使用IIS,c#,iis,asp.net-web-api,webforms,asp.net-web-api-routing,C#,Iis,Asp.net Web Api,Webforms,Asp.net Web Api Routing,我在Global.asax的Application\u Start中有一个简单的路径: RouteTable.Routes.MapHttpRoute("MyApi", "api/{controller}/{id}"); 这是控制器的文件夹路径和要从控制器使用的页面: public class VideoController : ApiController { public HttpResponseMessage Get(long id) { try

我在
Global.asax的
Application\u Start
中有一个简单的路径:

RouteTable.Routes.MapHttpRoute("MyApi", "api/{controller}/{id}");
这是控制器的文件夹路径和要从控制器使用的页面:

public class VideoController : ApiController
{
    public HttpResponseMessage Get(long id)
    {
        try
        {
            // some code here
        }
        catch (Exception e)
        {
            return Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e);
        }
    }
}

当我在visual studio中运行项目时,它工作正常,但当我在iis上发布应用程序时,我发现以下错误:

Failed to load resource: the server responded with a status of 404 (Not Found)
更新

这是我的控制器的内容:

public class VideoController : ApiController
{
    public HttpResponseMessage Get(long id)
    {
        try
        {
            // some code here
        }
        catch (Exception e)
        {
            return Request.CreateErrorResponse(HttpStatusCode.ServiceUnavailable, e);
        }
    }
}
我通过将html5视频标签放入
default.aspx
以下路径调用此控制器:

WebContent/pages/web/default.aspx

<video controls="" preload="auto" class="uk-width-1-1">
    <source src="/api/video/3" type="video/mp4">
</video>


我如何解决这个问题。

这一行可能就是问题所在

<source src="/api/video/3" type="video/mp4">

如果您已使用Visual Studio本身在IIS上托管应用程序,则它通常会在默认网站下的web应用程序下托管应用程序,并且您的url如下所示

尝试将您的url更改为

<source src="/yourAppnameinIIS/api/video/3" type="video/mp4">


如果你还没有尝试过的话,那就值得一试。

在你的
web.config
文件中设置
path=“*。”
verb=“*”

你的控制器中的代码是什么,你有没有像[route(“api/getContacts”)]这样的路由属性@uowzd01,我更新了我的问题,请帮助我,这对我来说非常关键。我应该把这些配置放在哪里?您能用属性编写完整的标记吗?
我添加了此配置,但在运行项目时发生了此错误:
HTTP错误500.23-内部服务器错误检测到ASP.NET设置不适用于集成管理管道模式。
您能显示您的web配置代码吗您只需要在集成版本声明的位置添加谓词和路径。