현재 여러 웹 사이트에서 사용하기 위해 N2 CMS를 평가하고 있습니다.N2 NullReferenceException "Html.DroppableZone ("h1 "). Render()"
고객에게 '드래그'기능 만 제공하여 페이지의 영역에 부품을 추가하고, 채우고, 드래그 할 수 있습니다. 관리 영역의 "백엔드"기능은 개발자를 위해 예약됩니다.
따라서 SlidingCurtain 컨트롤을 사용하여 렌더링하지 않습니다. 지금은 올바른 역할을 가진 사용자가 로그인 할 때 나타나는 사용자 지정 관리자 패널을 만들었습니다. 일반적으로 슬라이딩 커튼은 '드래그'기능을 클릭하면 URL에 "? edit = drag"쿼리 문자열을 추가합니다 버튼을 클릭하면 로그인 후 자동으로이 쿼리 문자열을 추가합니다.
이렇게하면 다음 줄에 NullReferenceException이 발생합니다. Html.DroppableZone ("H1"). Render();
이 순간부터이 DroppableZone에는 아직 부품이 없으며 이것이이 문제의 원인이라고 생각합니다. 이 문제를 어떻게 해결할 수 있습니까?
namespace EmptyCMS.Controllers
{
[Controls(typeof(Models.H1))]
public class H1Controller : ContentController<Models.H1>
{
public override ActionResult Index()
{
return PartialView("H1", CurrentItem);
}
}
}
그리고 다음 partialview :
나는 다음과 같은 H1Controller이
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Models.H1>" %>
<h1><%= Model.Text %></h1>
을 그리고 이것은 내 모델 :
namespace EmptyCMS.Models
{
[PartDefinition("H1")]
[AllowedZones("H1")]
public class H1 : ContentItem
{
[EditableTextBox("Text", 100)]
public virtual string Text { get; set; }
}
}
사람이 내가 뭘하는지 발견 할 수 잘못된? 당신이 내게 줄 수있는 도움을 많이 주셔서 감사합니다.
그것은 밖으로 N2 소스 코드를 얻을하는 데 도움이 될 수 있습니다 자신의 [GitHub의 (https://github.com/n2cms/n2cms) 및 그 빌드에 대해 실행 어디가 잘못 됐어. 나 혼자 미안 지역을 사용한 적이 없다 – Rup
고마워. 나는 그것을 정확하게 끝내었다. –
계속 : 존 내부에 부품이 없으면 코드에 문제가있는 것처럼 보입니다. 하지만 나는 이것이 맞을 수 없다고 생각합니다. –