如果实体没有数据库视图的所有属性,它会破坏应用程序吗?

本文关键字:应用程序 属性 实体 数据库 视图 如果 | 更新日期: 2023-09-27 18:02:56

我正在从数据库生成实体代码第一模型。同时添加"ADO。. NET实体数据模型",我选择了"来自数据库的代码",在实体数据模型向导中选择了数据库视图。然后Visual Studio为视图生成正确的实体:

[Table("schemaName.emp_v")]
public partial class Employee
{

这个视图是通用的,由其他团队拥有,以后可以添加新的列。为了模拟这种情况,我在为schemaName.emp_v视图生成的Employee实体中注释了一些属性。我期待EF异常,因为实体属性的数量和视图属性的数量不匹配;应用程序的工作方式与注释实体属性之前相同。

当代码生成后在视图中添加新列时,它会破坏我的应用程序,因为我的应用程序确实有那些新添加的列的相应属性(如果实体没有数据库视图的所有属性的属性,它会破坏应用程序)?

如果实体没有数据库视图的所有属性,它会破坏应用程序吗?

当代码生成后在视图中添加新列时,它是否会破坏我的应用程序,因为我的应用程序确实为这些新添加的列具有相应的属性

Not for select .

用于更新和插入,这取决于。如果需要一些新列(not null),那么您将无法为它们提供值,因此添加和更新操作将失败。

记住,EF最终只是生成SQL。如果它有足够的信息来创建无错误执行的SQL,那么它将工作