我在使用v1.6.1时开始创建新主题。
创建自定义模块的事情进展不顺利,所以我决定从头开始。这次我使用的是V1.7的源代码
我复制了我的自定义主题文件夹,将其粘贴到新1.7项目的themes文件夹中并运行该站点。我可以在仪表板中看到主题,因此我将其设置为当前主题。
现在,当我查看我的网站时,没有任何图片正在加载。样式表正在加载,但没有任何图像 - 无论是样式表还是任何视图 - 都在加载。
我的图片在myTheme / content / images中 - 根据我的理解,1.6.1需要如何布置。
我的内容文件夹有一个web.config,我的images文件夹也是如此。它与1.6.1中使用的配置相同,所以我想知道是否有变化。
在我的一个主题视图中,我有以下代码 - 这在1.6.1中起作用:
<img src="@Url.Content(Html.ThemePath(WorkContext.CurrentTheme,"/Content/Images/phoneBullet.png"))" alt="T:" />
如果我把它输出到我的前端,我得到:
~/Themes/PerformanceAbrasives/Content/Images/phoneBullet.png
这告诉我事情似乎在正确的位置 - 虽然我想知道我的web.config现在是否过时了?
我有这个 - 内容中有副本,图像中有副本:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.web>
<httpHandlers>
<!-- iis6 - for any request in this location, return via managed static file handler -->
<add path="*" verb="*" type="System.Web.StaticFileHandler" />
</httpHandlers>
</system.web>
<system.webServer>
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
</staticContent>
<handlers accessPolicy="Script,Read">
<!--
iis7 - for any request to a file exists on disk, return it via native http module.
accessPolicy 'Script' is to allow for a managed 404 page.
-->
<add name="StaticFile" path="*" verb="*" modules="StaticFileModule" preCondition="integratedMode" resourceType="File" requireAccess="Read" />
</handlers>
</system.webServer>
</configuration>
任何指针?
更新
好的...所以如果我将我的项目设置为使用Visual Studios内部开发服务器那么一切都很好 - 如果我告诉它使用本地IIS Web服务器 - 使用IIS Express(http://localhost:30333/
) - 那么它不会工作......
更新2
好的 - 现在从IIS 7运行并且图片无法加载...样式表似乎没问题,但图片不是.. grrr
任何想法,所以我在部署时不会遇到这个问题?
答案 0 :(得分:3)
好的 - 我认为......
您只需要Content
目录中的web.config,而不是content
和images