блок episerver не работает с xforms

У меня возникли проблемы с тем, чтобы заставить XForms работать в блоке в EPiServer 7. Это веб-формы, а не MVC.

XForms работают, когда я помещаю их на обычную страницу, но когда я использую их на блоках, я получаю нулевое исключение. Смотри ниже.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentNullException: Value cannot be null.
Parameter name: virtualPath

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ArgumentNullException: Value cannot be null.
Parameter name: virtualPath]
System.Web.VirtualPath.Create(String virtualPath, VirtualPathOptions options) +11610798
EPiServer.Web.TemplateControlLoader.LoadControl(HttpContextBase httpContext, Type renderType, Object renderData, TemplateControl templateControl, String tag, Action`2 bindDataAction) +214
EPiServer.Web.TemplateControlLoader.LoadControl(HttpContextBase httpContext, IContentData contentData, TemplateControl templateControl, String tag) +223
EPiServer.Cms.Shell.MoveToPlatform.PersonalizationContentControlResolver.ResolveContentControls(ContentArea contentArea, Control parentControl, String tag, String itemCssClass, String itemTagName, Boolean enableEditFeatures) +870
EPiServer.Web.PropertyControls.PropertyContentAreaControl.GetContentRenderers(Boolean enableEditFeatures) +598
EPiServer.Web.PropertyControls.PropertyContentAreaControl.CreateContentAreaControls(Boolean enableEditFeatures) +130
EPiServer.Web.PropertyControls.PropertyDataControl.CreateChildControls() +103
System.Web.UI.Control.EnsureChildControls() +182
EPiServer.Web.WebControls.Property.CreateChildControls() +600
System.Web.UI.Control.EnsureChildControls() +182
System.Web.UI.Control.PreRenderRecursiveInternal() +60
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Control.PreRenderRecursiveInternal() +222
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4201

Пробовал сравнивать с шаблонами Alloy, но не нашел разницы, что должно ломаться вот так.

Я также пытался отладить, но он не останавливается ни на каких точках останова, которые могли бы дать какую-либо информацию.

Кто-нибудь знает, в чем может быть проблема? Благодарен за любую помощь.


person trembon    schedule 03.05.2013    source источник


Ответы (1)


Я нашел решение этой проблемы, но не почему проблема возникла. Я предполагаю, что эписервер кэшировал средство визуализации и пытался получить доступ к его более старой версии, которой не существовало.

Решение заключалось в том, что средство визуализации для блока каким-то образом было повреждено. Что я сделал, так это удалил веб-элемент управления, который был рендерером, вошел в режим редактирования и получил ошибку «рендерер не найден для блока, а затем создал его снова.

Так что проблема, похоже, не в модуле xforms.

person trembon    schedule 06.05.2013