首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC Partials vs User Controls?

MVC Partials vs User Controls?
EN

Stack Overflow用户
提问于 2012-02-17 18:47:56
回答 1查看 939关注 0票数 3

我正在尝试理解MVC应用程序中的用户控件是什么?据我所知,这是部分。我发现的问题是,当我使用用户控件时,我能够将逻辑封装在该控件中,并在多个页面中重用它,而不必担心父页面。

这是如何在MVC中工作的?似乎没有任何方法可以用部分视图封装逻辑。事实上,它把我搞糊涂了。

这是否意味着对于任何可能使用部分的页面,控制器总是必须返回部分的数据,以防需要呢?这不是看起来非常低效吗?我似乎不能理解这是怎么回事...

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-17 18:56:29

您可以使用razor语法添加逻辑。例如,您可以使用条件语句来操作最终输出。

代码语言:javascript
复制
@{ 
    if(whatever == true) 
    {
       <p>Whatever is true</p>
    }
    else
    {
       <span id="someId">
           <label for="enterName">Enter name:</label> <input type="text" id="enterName" />
       </span>
    }
}

除此之外,您还可以使用@helper语法,如

代码语言:javascript
复制
@helper MakeLink(dynamic id)
{
    <div id="actionButtons">
        @Html.ActionLink("Some Title", "Some Action", new {id = id}) |
        @Html.ActionLink("Another Title", "Another Action", "Some Controller", new {id = id})
    </div>
}

分式符号中的逻辑与您在Web窗体用户控件中使用的逻辑略有不同。上面的逻辑可以放在一个局部文件中,这样你以后就可以重用它,你只需要把它放在/Views/Shared/DisplayTemplates或EditorTemplates中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9326854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档