C# 使用ASP.NET MVC找不到内容文件夹中的资源
我正在尝试加载存储在我的解决方案中的C# 使用ASP.NET MVC找不到内容文件夹中的资源,c#,html,asp.net,asp.net-mvc,C#,Html,Asp.net,Asp.net Mvc,我正在尝试加载存储在我的解决方案中的trackCues.vtt文件,并尝试以以下方式在我的视图中加载此资源: <video style="margin-top:30px;margin-bottom:30px" width="800" height="600" controls> <source src='@Url.Content("~/Content/AudioAssets/speechSample.mp4")' type="video/mp4"> <
trackCues.vtt
文件,并尝试以以下方式在我的视图中加载此资源:
<video style="margin-top:30px;margin-bottom:30px" width="800" height="600" controls>
<source src='@Url.Content("~/Content/AudioAssets/speechSample.mp4")' type="video/mp4">
<track src='@Url.Content("~/Content/AudioAssets/trackCues.vtt")' kind="metadata" default>
</video>
但是,当页面加载时,我收到以下错误:
未能加载资源:服务器以404状态响应
(未找到)\trackCues.vtt
我不知道为什么这是失败的,因为路径看起来是正确的(但我一定是错的)
注意:我使用相同的语法从同一目录加载视频,因此我不确定为什么
.vtt
文件不会加载在ApplicationHost.config中指定Mime类型
将以下配置添加到ApplicationHost.config
<mimeMap fileExtension=".vtt" mimeType="text/vtt" />
在Web.config中指定Mime类型(为OP工作) 此配置允许在不必更改任何服务器设置的情况下部署项目
<system.webServer>
<staticContent>
<remove fileExtension=".vtt " />
<mimeMap fileExtension=".vtt " mimeType="text/vtt" />
</staticContent>
</system.webServer>
将
占位符替换为用于登录的用户名。快捷方式是在这里查看%HOMEPATH%\Documents\IISExpress\config
我找到了它-我的Documents文件夹存储在网络上的另一台机器上。但在添加mimeMap后仍然无法工作。同样的错误可能尝试重新启动IIS Express?根据您的答案,我在这里找到了一个解决方案:您让我走上正确的轨道,因此我很乐意接受您的答案-请更新以包括此方法(我相信它会更好,因为它可以在机器之间移植)完成:)我同意在Web.config
中指定此选项可能会省去一些麻烦。但是,在服务器范围的配置中指定这些内容的好处之一是所有站点都将被更新。无论如何,很高兴这对你有用。
<system.webServer>
<staticContent>
<remove fileExtension=".vtt " />
<mimeMap fileExtension=".vtt " mimeType="text/vtt" />
</staticContent>
</system.webServer>