2013-05-08 81 views
1

我搭建了一个新的MVC控制器,以及一个相应的视图和一个POCO类的集合。在结果视图中是一个表,它将列出该类集合中的每个条目。但是,该表还包含该类中每个属性的列,我只想在该视图中显示它们的子集。 如果我现在手动编辑视图以删除我不想在生成的HTML中显示的东西,这是一个坏主意吗?手动编辑脚手架视图的不好主意?

我不清楚作为ASP.NET MVC(版本3和更高版本)的一部分的脚手架功能是否旨在为您的Web应用程序生成基本功能,让您可以自由地做你想做的事随后的结果,或者如果认为最好的做法是单独留下生成的结果并找到另一种方法来完成我想完成的任务。我知道你可以自定义你自己的脚手架模板,但是对于这样一个简单的改变来说,这似乎有很多工作要做。

谢谢!

+0

您是否尝试过编辑脚手架,然后运行的网站的? – ywm 2013-05-08 16:10:59

+0

@ywm - 通过“脚手架”,你的意思是脚手架的生成结果?是的,我编辑了脚手架为我建立的视图,它工作得很好。不过,我不清楚这是否是一个好主意。 – Derek 2013-05-08 16:13:31

回答

1

编辑脚手架视图绝对可以。这只是快速构建基础知识的一个功能,但这永远不会满足。

所以你可以编辑它所有你想要的。请记住,如果你编辑你的模型,你将不得不手动操作你的视图,但这是我想的正常。

+0

你和Thiago都给出了令人满意的(和类似的)答案,但是你先发布了一些信息,并且详细介绍了我的核心问题,这样你就可以得到接受的答案。谢谢! – Derek 2013-05-09 12:57:16

1

脚手架将帮助您生成强制键入模型的视图。当然,如果你愿意,你可以更新你的视图中的HTML。另一个好的提示:不要使用你的模型,而是根据这个模型创建一个ViewModel,并且只把你需要显示在视图中的属性。

查看此内容: https://stackoverflow.com/a/11064362/1384539

+1

我同意使用ViewModel绝对是一件好事,因为它在视图和实体类之间提供了更多的分离。但是,如果你走这条路,你就回过头来处理一些幕后管道,将ViewModel与你的实体类和相关数据访问联系起来。像AutoMapper这样的库会带来很多麻烦,但它并不像让MvcScaffolder为你做几乎所有的设置那么简单。虽然这个链接绝对是值得阅读的。谢谢! – Derek 2013-05-08 21:11:06

+0

你是对的@Derek。但海事组织,我们正在谈论一个具体案例。可能他不会为每个视图做到这一点。 – 2013-05-09 12:20:59