2012-03-30 75 views
8

SSVE是否支持嵌套迭代器?南希 - 超级简单视图引擎:嵌套@每个

我正在寻找走在我的SSVE视图中的对象图(见下文),但我怀疑嵌套迭代器不是去这里的方式。还有另一种方法吗?

我知道SSVE是内部使用,并不意味着完全生产使用,所以没有问题,但我不想添加Razor的参考和弄乱我的web.config文件,除非我绝对必须。

嵌套迭代器视图(我最好的猜测)

@Master['_Master'] 

@Section['Content'] 
    <h1>Assessment - @Model.survey.title</h1> 
    @Each.survey.pages 
     <div> 
      <h2>@Current.title</h2> 
      @Each.questions 
       <div>@Current.title</div> 
      @EndEach 
     </div> 
    @EndEach 
@EndSection 

回答

18

这个问题现在已经很老了,但仍然是谷歌的顶级搜索结果,每个使用超级简单视图引擎进行嵌套。如果有其他人遇到此问题,请了解对“每个”中的“部分视图”的支持已添加到SSVE中。 (我用它做的正是这种视图嵌套的 - 集合中遍历集合。)

所以,你可以实现你想要使用两个视图,其中外一个看起来像这样的效果:

@Master['_Master'] 

@Section['Content'] 
    <h1>Assessment - @Model.survey.title</h1> 
    @Each.survey.pages 
     <div> 
      <h2>@Current.title</h2> 
      @Partial['QuestionList', Current.questions] 
     </div> 
    @EndEach 
@EndSection 

,然后其他视图(其中SSVE将与名称QuestionList找到)看起来是这样的:

@Each 
    <div>@Current.title</div> 
@EndEach 

虽然它会导致相当多的文件,你应该能够通过重复此去任意深度模式。

2

不,这是行不通的 - SSVE本质上只是一个正则表达式。它应该支持每一个内部,但目前它不支持。

+0

一个嵌套的@Partial可以做到足够的把戏......并且会导致关于视图的巧妙的分离问题。你显然是一个忙碌的人,但你有没有计划让这个工作? – biofractal 2012-04-03 13:17:29

+0

计划,是的,时间,否:-P我希望能够进入下一个南希发布,但我不能100%确定我能否做到。 – 2012-04-03 13:27:20

+0

这个缺少的功能有什么进展吗?我希望这个功能被添加,并且这个问题只需要更新。 – detroitpro 2014-03-16 22:07:50