在IIS7中ASP.NET MVC 3中找不到图片

4
我找了一个类似的帖子,但没有找到解决方案。 我的问题是:
  • 我在Visual Studio 2010中创建了一个ASP MVC 3网页
  • 我添加了图片到Content/Images以在一个页面中使用
  • 我添加了一个名为swf的文件夹,其中包含另一页的Flash文件
当我在本地主机上运行时,所有内容都可以正常工作,包括布局和.css。
问题: 当我将其放入IIS时,
  • 某些页面不显示.css,而不是所有页面
  • Flash对象不出现,我怀疑它找不到或其他原因。
我读到这是一个常见的问题,但没有找到解决方法,任何帮助都会感激。 附加信息 以下是来自各个部分代码的片段
@{
    Layout = "~/Views/Shared/_Layout_Green.cshtml";
}

<link rel="Stylesheet" type="text/css" href="@Url.Content("~/Content/history.css")" />
<script type="text/javascript" src="@Url.Content("~/Scripts/history.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/swfobject.js")"></script>    

<script type="text/javascript">    
    var swfVersionStr = "10.0.0";    
    var xiSwfUrlStr = "/swf/playerProductInstall.swf";    
    swfobject.embedSWF("/swf/QrCodeReader.swf", "flashContent", "350px", "350px", "10.0.0", xiSwfUrlStr, flashvars, params, attributes);    
    swfobject.createCSS("#flashContent", "display:block;text-align:left;");

<li><img src="/Content/Images/flower.png" width="700" height="300" alt="" /></li>

你是如何引用你的CSS、图片和Flash文件的?你能举个例子说明一些路径没有起作用吗? - ataddeini
3个回答

7
尝试在JavaScript中使用@Url.Content语法来处理路径。这将确保无论虚拟目录的设置如何,路径都能正确生成。
var xiSwfUrlStr = '@Url.Content("~/swf/playerProductInstall.swf")';

swfobject.embedSWF('@Url.Content("~/swf/QrCodeReader.swf")', "flashContent", "350px", "350px", "10.0.0", xiSwfUrlStr, flashvars, params, attributes);

<li><img src='@Url.Content("~/Content/Images/flower.png")' width="700" height="300" alt="" /></li>

0

尝试使用:

<%= ResolveUrl("~/Content/Images/flower.png") %>

那肯定可以做到。


0

提醒一下 - 下载 Fiddler,你可以轻松地查看正在请求的 URI 和 404 错误。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接