Asp.net mvc 发布MVC应用程序VS2013时不包括字体文件

Asp.net mvc 发布MVC应用程序VS2013时不包括字体文件,asp.net-mvc,twitter-bootstrap,publishing,Asp.net Mvc,Twitter Bootstrap,Publishing,我已经将(Twitter)引导集成到我的ASP.NETMVC(4)应用程序中。 在我的源代码中,我有以下字体文件: 发布应用程序时,只有.svg文件包含在此字体文件夹中 我还有一个img文件夹作为引导的一部分: 发布应用程序时,所有图像文件都将包含在内 那么,如何让VS2013在发布应用程序时复制这些字体文件呢?一个临时解决方案 从“属性”窗口中选择字体文件并将生成操作更改为内容。这会立即修复它,但会让您在将来遇到丢失的文件 要永久解决此问题,这可能会有所帮助 您可以通过修改字体文件扩展名(

我已经将(Twitter)引导集成到我的ASP.NETMVC(4)应用程序中。 在我的源代码中,我有以下字体文件:

发布应用程序时,只有
.svg
文件包含在此
字体
文件夹中

我还有一个
img
文件夹作为引导的一部分:

发布应用程序时,所有图像文件都将包含在内

那么,如何让VS2013在发布应用程序时复制这些字体文件呢?

一个临时解决方案

从“属性”窗口中选择字体文件并将生成操作更改为内容。这会立即修复它,但会让您在将来遇到丢失的文件

要永久解决此问题,这可能会有所帮助

您可以通过修改字体文件扩展名(.eot、.ttf等)的默认生成操作来永久修复此问题

我注意到VS2017中“文件发布选项”中的“发布期间预编译”复选框阻止了*.lic文件被包括在部署中,尽管它被配置为“内容”。一个*.txt文件没有这个问题,所以我假设这与“未知”文件扩展名有关。 我不确定这是否是针对VS2017的,或者其他版本也有这个奇怪的问题。
无论如何,我认为我会分享这一点,因为它非常违反直觉,似乎与该复选框完全无关,可能会帮助有类似问题的人。

在我的情况下,我部署到azure并在web.config中进行了以下修改,修复了我的问题

<configuration>
<system.webServer>
    <staticContent>
        <mimeMap fileExtension="woff" mimeType="application/font-woff" />
        <mimeMap fileExtension="woff2" mimeType="application/font-woff" />
     </staticContent>
</system.webServer>


请参阅

在visual studio中右键单击字体文件以查看属性时,检查字体文件是否标记为“内容”,以执行生成操作