在 ASP.NET MVC 中提供无扩展名的静态文件;得到 404s
Serving extensionless static files in ASP.NET MVC; getting 404s
无论出于何种原因(呃,假设我们必须这样做),我们的 ASP.NET MVC 应用程序中有一个 JavaScript 文件和一个没有扩展名的 CSS 文件。 JavaScript 文件位于路径 ~/Scripts/js
,CSS 文件位于 ~/Styles/css
。这些是分别包含 JS 和 CSS 的静态文件,但没有文件扩展名。
现在,当我尝试在浏览器中加载资源时,我得到了这两条路径的 404。我需要做什么才能让我的 ASP.NET MVC 应用程序为这些无扩展名的文件提供服务(并为它们提供正确的 MIME 类型)? web.config 中的某些内容并将特定的 URL 模式映射到静态文件的 HTTP 处理程序,我猜。看来我的谷歌搜索技术不够,见谅。
我认为 esmoore68 可能有最好的答案...但是...如果您不想这样做,我想知道您是否可以在页面上声明样式(和脚本)(而不是引用文件),并可能在需要这些的页面上使用标签,并在代码隐藏中实际打开文件,将它们作为文本读取,然后在页面加载时将它们写入标签?
具体来说,我还没有尝试过类似的方法,但它似乎可行。
如果是这样,也许您可以创建一个用户控件,这样您就可以将它放在所有页面中,而不是每次都重复它。
无论出于何种原因(呃,假设我们必须这样做),我们的 ASP.NET MVC 应用程序中有一个 JavaScript 文件和一个没有扩展名的 CSS 文件。 JavaScript 文件位于路径 ~/Scripts/js
,CSS 文件位于 ~/Styles/css
。这些是分别包含 JS 和 CSS 的静态文件,但没有文件扩展名。
现在,当我尝试在浏览器中加载资源时,我得到了这两条路径的 404。我需要做什么才能让我的 ASP.NET MVC 应用程序为这些无扩展名的文件提供服务(并为它们提供正确的 MIME 类型)? web.config 中的某些内容并将特定的 URL 模式映射到静态文件的 HTTP 处理程序,我猜。看来我的谷歌搜索技术不够,见谅。
我认为 esmoore68 可能有最好的答案...但是...如果您不想这样做,我想知道您是否可以在页面上声明样式(和脚本)(而不是引用文件),并可能在需要这些的页面上使用标签,并在代码隐藏中实际打开文件,将它们作为文本读取,然后在页面加载时将它们写入标签?
具体来说,我还没有尝试过类似的方法,但它似乎可行。
如果是这样,也许您可以创建一个用户控件,这样您就可以将它放在所有页面中,而不是每次都重复它。