在将Umbraco 4.8项目移动到服务器调用Model.MediaById时,在Examine.ExamineManager.get_Instance()中崩溃

时间:2012-08-21 13:57:03

标签: umbraco

我正在使用Umbraco 4.8和IIS 7.从WebMatrix运行时,我的代码工作正常。昨天我把它移到我的本地IIS服务器上进行测试,然后再将它移到远程服务器上。我无法获得媒体文件的简单请求。我不能按照其他线程的建议使用Examine仪表板,因为它与4.8不兼容。我已经清空了我的媒体文件夹(在后台办公室,然后在文件夹本身),并使用桌面媒体上传器将图像全部放回原处。没有不同。我的简单Razor文件:

<img  src="@Model.MediaById(Model.friendlyPicture).umbracoFile" alt="picture" />

导致以下崩溃: 加载Razor脚本时出错(文件:Tg配置文件图像)'Examine.ExamineManager'的类型初始化程序引发了异常。在Examine.ExamineManager.get_Instance()

 at umbraco.MacroEngines.ExamineBackedMedia.GetUmbracoMedia(Int32 id)
 at umbraco.MacroEngines.Library.RazorLibraryCore.MediaById(Int32 Id)
 at umbraco.MacroEngines.Library.RazorLibraryCore.MediaById(String Id)
 at umbraco.MacroEngines.DynamicNode.MediaById(String Id)
 at System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0,    T1 arg1)
 at ASP._Page_macroScripts_tgProfileImage_cshtml.Execute() in    c:\Websites\UmbracoSites\Todd Growns\ToddUmbracoSite\macroScripts\tgProfileImage.cshtml:line 2
 at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
 at System.Web.WebPages.WebPage.ExecutePageHierarchy(IEnumerable`1 executors)
 at System.Web.WebPages.WebPage.ExecutePageHierarchy()
 at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
 at umbraco.MacroEngines.RazorMacroEngine.ExecuteRazor(MacroModel macro, INode currentPage)
 at umbraco.MacroEngines.RazorMacroEngine.Execute(MacroModel macro, INode currentPage)

在以前的项目中,我只使用上传功能将图像添加到页面。这次使用MediaPicker似乎要好得多,以避免两次上传图像。我试图以各种方式加载图像(包括内联剃刀宏加上我想使用的ImageGen.ashx),但它总是落在同一个地方。我的app_data文件夹中没有Examine索引,所以我看不出它是如何处理损坏的索引的。

在各个地方都有类似的错误报告,但没有任何我可以使用的答案。

2 个答案:

答案 0 :(得分:0)

我看起来像是在检查ExamineIndex.config或ExamineSettings.config文件时遇到问题。

当试图获取媒体时,它会首先尝试从Examine获取它,然后再转到数据库。在这种情况下,似乎无法找到索引,这可能是由于权限问题或错误的配置。由于它在webmatrix中工作,我认为配置很好。

您是否尝试过为您的应用程序池帐户提供对文件夹的完全权限?

答案 1 :(得分:0)

过去移动网站后移动重建索引。在这个例子中,它是存储媒体和文档数据的internalindex。

此致

伊斯梅尔