【问题标题】:Updating Views when Model is modified修改模型时更新视图
【发布时间】:2014-02-01 02:03:56
【问题描述】:

只是想知道是否可以更新连接到 ASP.NET MVC 中模型的视图。

我首先使用实体​​框架数据库,它为解决方案创建一个 .edmx 对象模型。

我根据模型创建了一个新的脚手架模型,它创建了:

  • 创建.cshtml
  • 删除.cshtml
  • Details.cshtml
  • Edit.cshtml
  • Index.cshtml

如果我在模型中添加属性,如何使用新属性自动更新这些视图以在 UI 中表示更新后的模型?

【问题讨论】:

  • 你的意思是添加一个属性而不是一行,对吧?
  • 是的......对不起。我在 Management Studio 的模型上做了很多工作,所以我使用 db 术语。这是一个错误。

标签: asp.net-mvc view


【解决方案1】:

Changing the Database : The Official Microsoft ASP.NET Site中所述:

要更新视图,您有两个选择 - 您可以通过再次为 Student 类添加脚手架来重新生成视图,或者您可以手动将新属性添加到现有视图中。在本教程中,您将再次添加脚手架,因为您没有对自动生成的视图进行任何自定义更改。当您对视图进行了更改并且不想丢失这些更改时,您可以考虑手动添加该属性。

为确保重新创建视图,首先删除视图下的学生文件夹。然后,右键单击 Controllers 文件夹并为 Student 模型添加脚手架。再次,将控制器命名为 StudentController。单击添加时,系统会询问您是否要替换名为 StudentController 的现有文件。选择确定。

视图现在包含 [添加的] MiddleName 属性。

请注意,这显然也会覆盖您的控制器。请务必备份并使用源代码管理。

【讨论】:

  • 感谢 CodeCaster。我希望可能有一个解决方案来修改已经创建的元素。主要是因为我现在需要遍历5个文件并单独添加,因为我已经自定义了很多元素。
  • @gerdi 我明白,但据我所知,没有办法这样做。我还没有发现脚手架非常有用。如果您使用DisplayTemplates and EditorTemplates,您可以只在两个地方而不是五个地方命名您的模型属性。
猜你喜欢
  • 2021-05-21
  • 2018-06-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多