ASP.NET MVC - 如何在同一个项目中使用代码优先和数据库优先方法,并使用相同的上下文

时间:2017-12-07 08:57:14

标签: asp.net-mvc entity-framework ef-code-first transactionscope ef-database-first

我要求我必须首先使用代码优先模式(我必须实现)以及数据库(存在于当前系统中)。

现在条件是我不能为新表或我在数据库中创建的任何其他更改创建不同的上下文,但必须从DB第一个模式维护当前上下文。是否可以先在同一个项目中共享相同的上下文创建代码并首先创建数据库?我是否必须管理.edmx文件,或者是否可以仅从代码优先模式处理数据库?管理TransactionScope也是如此。

我需要一些建议。

1 个答案:

答案 0 :(得分:1)

我从上面的问题中学到了一些东西。

  1. 首先不能使用相同的上下文和数据库优先使用相同的上下文。
  2. 要在同一个项目中首先使用代码和首先使用数据库,因此上下文必须不同,而与ConnectionString无关。 (可以使用现有的ConnectionString或创建一个新的)
  3. 在同一个地方使用两种模式并不是一种好习惯,但如果情况需要,那么就必须别无选择。因此,最后一个可以首先从数据库创建代码的POCO类,因此它很有用。
  4. TransactionScope可用于不相关数量的数据库连接,并且可以正常工作。
  5. 如果我缺少任何东西,请将其添加,以便其他人可以有更好的想法,或者他们至少可以节省他们的时间。