因此,当我立即使用EF向导并选择一个视图时,它会为视图中的每一列创建实体。如何为特定的几列选择实体生成?我不需要所有这些。此外,DB架构经常更改。我能做些什么来确保它不会破坏我的应用程序?
答案 0 :(得分:1)
你问了两个问题,所以这将是一个由两部分组成的答案。
[答案1]通过向导生成模型时无法选择特定列。但是,一旦生成模型,删除属性将从模型中删除它(及其映射)。 (请注意,不可为空的列需要作为属性浮出水面,否则您将收到错误。)
[答案2]在回应经常更改的架构方面,最好的办法是确保了解模型下面的内容。 EDMX包含3个部分:
当您的数据库架构发生更改并运行“从数据库更新模型”向导时,您的CSDL和SSDL可能会不同步。这是因为SSDL会随着更改而更新,但CSDL不会(除非您添加新内容)。现在,在大多数情况下,这是一件好事,因为它不会消除您所做的任何更改,因此您的模型仍将适用于您的应用程序逻辑。但是由于SSDL的变化,您可能会看到错误。
有几种方法可以解决这个问题:
希望有所帮助!可能没有完美的解决方案,但它应该可以帮助您完成大部分工作。