在MVC视图模型中是错误的吗?
我只需要关于mvc视图模型的一点帮助。 我看到每个人都使用mvc视图模型。 但那样我们正在编写更多的代码。
public class Artist
{
public int ArtistId { get; set; }
public string NameSurname { get; set; }
public int Age { get; set; }
}
public class ArtistViewModel
{
public int ArtistId { get; set; }
public string NameSurname { get; set; }
public int Age { get; set; }
public string Whatever { get; set; }
public int Iwant { get; set; }
}
主班的副本。 是工作。 好。 不能我们这样做
public class ArtistViewModel : Artist
{
public string Whatever { get; set; }
public int Iwant { get; set; }
}
要么
public class ArtistViewModel
{
public Artist Artist { get; set; }
public string Whatever { get; set; }
public int Iwant { get; set; }
}
从域对象中创建单独的视图模型有很多原因
这里有几个我现在可以想到的。
=>视图模型是来自域/实体的数据的表示(信息)
=>视图模型是自定义视图的信息,你可能不允许/想要在这个特定的视图中显示/编辑实体的所有列。
=>对于不同的视图,您可能有许多视图模型都充满了来自同一个域对象的数据。
=>您可以限制可以通过View Model进行编辑/更新的内容。
如果您从实体继承ViewModel,即使您试图通过View限制它,黑客也可以轻松发布真实实体所有属性的数据
我的英语不是很好,所以如果你不了解某些事情,请告诉我,我会尽力澄清它
作为View Model的目的是限制我们发送给Web应用程序的数据。 因此,我们不必让所有实体都具有域类,而只是将其过滤到前端所需的属性。
在参考你的代码时,我看不到通过继承类来处理视图模型的任何不同。 只有当它处理来自视图模型的数据时。
按照个人喜好,我会与你的最后一个例子一起去,
public class ArtistViewModel
{
public Artist Artist { get; set; }
public string Whatever { get; set; }
public int Iwant { get; set; }
}
链接地址: http://www.djcxy.com/p/59765.html
上一篇: Is it wrong in MVC View Model
下一篇: ASP.NET MVC Runtime Compiler Complains About Wrong Model Type when Model is Null