0

在包管理器中执行时,update-database您必须选择一个项目作为启动项目,命令的输出会告诉您它正在使用的启动项目。我的问题是启动项目的意义是什么?

4

1 回答 1

2

启动项目用于查找正确的 App/Web.config 文件和要使用的输出目录。

考虑以下。您的 DbContext 存在于 WebApplication1 使用的 ClassLibrary1 中。EF 最终将使用的设置存储在 WebApplication1 项目的 Web.config 中。使用迁移命令时,您可以将 ClassLibrary1 指定为默认项目,并将 WebApplication1 指定为启动项目。此外,如果您在上下文或迁移中的某处使用相对路径,您会希望它们相对于 WebApplication1 的输出目录而不是 ClassLibrary1 的输出目录进行解析。

当然,如果一切都在一个项目中,您不必担心启动项目,因为它始终与默认项目相同。

于 2013-06-12T16:24:22.587 回答