我正在使用 C#、Breeze 和 Durandal 创建一个 SPA,但这个问题不仅仅涉及 SPA。通常,您有要创建和编辑的实体。以这个简单的实体为例:
class Entity {
[Key]
public int Id;
[Required]
public String FirstName;
[Required]
public String LastName;
}
现在您需要为此实体(* 100 个其他实体)创建一个创建和编辑表单。简单的方法是为每个函数创建两个表单。但是,这些表格几乎是完全相同的副本。
如果当有人单击“创建”时不需要任何字段,您可以在数据库中创建实体并将它们重定向到 /edit/$id。但是,您希望为保存编辑的用户使用注释生成的自动验证。
什么是减少表单html和后端代码重复的好方法?简单地让两个视图模型共享相同的视图可能就足够了,但我不确定如何使用 durandal 来做到这一点。