Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ASP.NET MVC中提供无扩展静态文件;得到404_Asp.net_Asp.net Mvc_Iis_Asp.net Mvc Routing - Fatal编程技术网

在ASP.NET MVC中提供无扩展静态文件;得到404

在ASP.NET MVC中提供无扩展静态文件;得到404,asp.net,asp.net-mvc,iis,asp.net-mvc-routing,Asp.net,Asp.net Mvc,Iis,Asp.net Mvc Routing,不管出于什么原因(呃,假设我们必须这么做),我们的ASP.NETMVC应用程序中有一个JavaScript文件和一个没有扩展名的CSS文件。JavaScript文件位于路径~/Scripts/js,CSS文件位于路径~/Styles/CSS。这些是分别包含JS和CSS的静态文件,但没有文件扩展名 现在,当我尝试在浏览器中加载资源时,这两条路径会得到404。我需要做什么才能使我的ASP.NET MVC应用程序为这些无扩展文件提供服务(并为它们提供正确的MIME类型)?我猜是web.config中的

不管出于什么原因(呃,假设我们必须这么做),我们的ASP.NETMVC应用程序中有一个JavaScript文件和一个没有扩展名的CSS文件。JavaScript文件位于路径
~/Scripts/js
,CSS文件位于路径
~/Styles/CSS
。这些是分别包含JS和CSS的静态文件,但没有文件扩展名


现在,当我尝试在浏览器中加载资源时,这两条路径会得到404。我需要做什么才能使我的ASP.NET MVC应用程序为这些无扩展文件提供服务(并为它们提供正确的MIME类型)?我猜是web.config中的一些内容,并将特定的URL模式映射到静态文件的HTTP处理程序。显然我的谷歌搜索能力不够,请原谅。

我认为esmoore68可能是最好的答案。。。但是如果您不想这样做,我想知道您是否可以在页面上声明样式(和脚本)(而不是引用文件),或者在需要的页面上使用标签,并实际以代码隐藏方式打开文件,将其作为文本读取,然后将其写入页面加载时的标签中

具体来说,我还没有尝试过类似的方法,但似乎会奏效


如果是这样的话,也许你可以创建一个用户控件,这样你就可以把它放在所有页面中,而不是每次都重复它。

你在使用捆绑和缩小吗?值得一提的是,无扩展URI是由ASP.NET MVC路由框架处理的,这就是为什么你会得到404:没有路线/行动来响应特定的请求URL。扩展Chris Pratt的答案,我认为你将很难让IIS正确地服务于这些请求URL。或者,您可以创建控制器操作,将内容从磁盘流式传输到响应,并相应地设置内容类型。