2012-01-17 5 views
1

私のプロジェクト(MVC3)N2CMS 2.2.1(nuget製)には次のものがあります。私はメインページを編集することができます "管理部品"機能と画像の部分をページにドラッグし、そのコンテンツを設定します。しかし、ページをレンダリングすると、_layout.cshtmlの内部にImage.cshtmlファイルがレンダリングされます(ページではなく、一部である)...これは、サイトに複数の頭/フッターなどのタグが付いていることを引き起こしていますレイアウト。どのようにしてDroppableZonesを得て、パーシャルを適切にレンダリングすることができますか(手動ですべてのパーシャルビューにLayout = ""を設定する必要はありません)。これを自分でテストしたい場合は、https://github.com/robbihun/N2CMSBaseStarterSiteのコードを実行して、sqlite dbを使ってN2CMSセットアップを実行し、管理部品機能(http://screencast.com/t/w9q5a49Ei8)を使って画像部分をホームページに表示する。N2CMS MVC3 Html.DropppableZoneレンダリングフルレイアウト

_layout.cshtml

<body> 
    @{ Html.ControlPanel().Render(); } 
    @RenderBody() 

    <footer>&copy; @DateTime.Now.Year</footer> 
    @RenderSection("scripts", false) 
</body> 

StartHome.cshtml

<div> 
@{ Html.DroppableZone(Zones.ImageSlider).Render(); } 
</div> 

Image.cshtml

@model ImagePart 

    <div class="image"> 
    <img src="@Model.Image" alt="@Model.Title" /> 
     <span class="title">@Model.Title</span> 
     <span class="description">@Model.ShortDescription</span> 
    </div> 

StartHomePage.cs

ImagePart.cs

[PartDefinition("Image Part", Description = "Image with title and description.")] 
[WithEditableTitle("Title", 10)] 
public class ImagePart : PartBase 
{ 
    [FileAttachment, EditableImageUpload("Image", 5)] 
    public virtual string Image { get; set; } 

    [EditableTextBox("Short Description", 15, TextMode = TextBoxMode.MultiLine, Rows = 5, Columns = 15)] 
    public virtual string ShortDescription { get; set; } 
} 
+0

あなたは私たちにスクリーンショットを与えることができますか?ここで重複したヘッダーやフッターは表示されません。 –

+0

これは少し明確にするのに役立ちますか?私がソースを見ると余分なメタタグがあり、フッタータグ(_layout.cshtmlファイルにあります)http://screencast.com/t/Hw8ZUGKTOp4 – Rob

+0

私はチェックアウトしましたあなたのレポとmsbuildでコンパイル - しかし、私はダブルヘッダー/フッターを参照してください –

答えて

0

は閲覧/共有/パーツフォルダに_ViewStart.cshtmlを追加し、そのフォルダ内のレイアウト設定を上書きします。新しい_ViewStartでは、Layout = null;を設定し、部分ビューでレイアウトを設定しないでください。ここで

はあなたのためのプル要求です:https://github.com/robbihun/N2CMSBaseStarterSite/pull/1