首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >想知道由哪个操作调用的部分视图

想知道由哪个操作调用的部分视图
EN

Stack Overflow用户
提问于 2013-09-09 10:48:39
回答 2查看 137关注 0票数 0

我正在研究asp.net MVC-4。我有一个添加或更新具有公共视图的场景,它实际上是一个部分视图。现在,我想问,我如何知道我是在添加模式或更新模式?提前谢谢。如果你对我的问题不太清楚。我会尽力解释的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-09 10:51:39

您可以创建一个属性来指定传递给该视图的模型中的模式。

代码语言:javascript
复制
public bool IsEditMode {get;set;}

因此,在Controller中,您根据模式在模型上设置了这个属性,因此它可以在视图中使用。

票数 0
EN

Stack Overflow用户

发布于 2013-09-09 13:18:17

在我看来,仅仅添加一个没有为模型/类本身增加价值的属性是一个错误的设计选择。即使当属性不会映射到数据库时也是如此。相反,我将使用view袋来区分添加/编辑。

一个更好的解决方案是使用ViewModels。您可以有一个EditViewModel.cs和AddViewModel.cs,它们都实现了一个公共接口,这样就可以将它们传递给同一个cshtml视图。

这有以下优点:

  • 当您想要为添加和编辑模型拥有不同的属性时,这将是更多的未来证明。
  • 您不是直接在模型上操作,而是在一个更加安全的视图模型上操作。
  • 在您的控制器中,很容易断言是(模型是EditViewModel)还是if (模型是AddViewModel)

亲切的问候

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

https://stackoverflow.com/questions/18696538

复制
相关文章

相似问题

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