2016-05-19 4 views
0

私は、特定のノードの上位5つの子をリストするために部分ビューを使用しています。Umbraco 7がミスマッチ{and}?

これは動作しますが、場合にのみ、私は

foreachの

例えば

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage 
<div class="title">Test</div> 
<ul> 
@{ 

var ow = @owCore.Initialise(1085); 
<div> </div> 
var node = Umbraco.Content(1105); 


foreach (var item in node 
      .Children.Where("Visible") 
      .OrderBy("Id descending") 
     .Take(5) 
     ) 
{ 

    <li><a href="@item.Url">@item.pageTitle</a></li> 
} 

} 
</ul> 

期待ソートされていないリストを作成する前に、DIVを置きます。

私は空のdivに

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage

テスト
<ul> 
@{ 

    var ow = @owCore.Initialise(1085); 

    var node = Umbraco.Content(1105); 


    foreach (var item in node 
       .Children.Where("Visible") 
       .OrderBy("Id descending") 
      .Take(5) 
      ) 
    { 

     <li><a href="@item.Url">@item.pageTitle</a></li> 
    } 

} 

を削除する場合は、私が手にエラーが

コンパイラエラーですメッセージ:CS1513:}期待

ソースエラー:

ライン113:}行目114:}行目115:}

クリア数が少なすぎる終値のように見える '}'

おそらくのdivが閉鎖を強制}?

私はowCore(それは私がにApp_Codeに構築しています関数のライブラリですチェックしていますが、私はこの背中を剥奪している、今ちょうどマッチした中括弧があることを確認するために何もしないです:

@using Umbraco 
@using Umbraco.Core.Models 
@using Umbraco.Web 

@functions{ 



    public static int Initialise(int siteDocID){ 

      return 0; 
    } 

} 

しかしを、Iは部分図から@owCoreコードを削除する場合

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage

テスト
<ul> 
@{ 



    var node = Umbraco.Content(1105); 


    foreach (var item in node 
       .Children.Where("Visible") 
       .OrderBy("Id descending") 
      .Take(5) 
      ) 
    { 

     <li><a href="@item.Url">@item.pageTitle</a></li> 
    } 

    } 
</ul> 

もう一度OKです。それはそれが一致{}

で問題をトリップ間違いowCoreの問題、あるいは単に何か他のものだ

を意味しています私はこの部分図を呼び出すテンプレートをチェックして、問題を見つけることができません。

これは意味をなさない。誰でも説明できますか?

ありがとうございます!

+0

実際には説明はありませんが、私自身の変数を{}セクションにラップして、@foreachで新しい変数を作成すると、ほとんどの場合に動作します。 –

+0

または、 ? –

答えて

0

これは、実際にはより面白い質問です。

コードブロックを@{で開始し、そのようにすると、owCoreの前に@は必要ありません。それを削除すると、@によって剃刀パーサがもはや混乱しなくなるので、<div>がなくてもレンダリングされます。

関連する問題