[英]Code-First Migrations and DataDirectory for LocalDb
看起来命令“ Update-Database”使用默认项目的目录作为AppDomain而不是启动项目的目录。
我有一个单独的类库项目,其中包含与数据库访问有关的所有内容,包括模型和迁移,我们称之为Project.Data 。 该项目的单元测试之一要求我在LocalDb上运行它。 因此,我在单元测试的app.config中创建了一个连接字符串。
Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\MyDb.mdf;Initial Catalog=MyDb;Integrated Security=True
但是当我运行命令“ Update-Database”时,DataDirectory的值为null。 而且在这里使用AppDomain的工作目录有点不可靠。
当模型和迁移相关代码位于单独的类库中时,如何在运行“更新数据库”时使用单元测试的工作目录?
我认为您必须在执行update-database命令时使用ProjectName
或StartUpProjectName
参数。
有关更多详细信息,请参见此处: update-database命令参考
Update-Database [-SourceMigration <String>] [-TargetMigration <String>] [-Script] [-Force]
[-ProjectName <String>] [-StartUpProjectName <String>] [-ConfigurationTypeName <String>]
-ConnectionString <String> -ConnectionProviderName <String>
[-AppDomainBaseDirectory <String>] [<CommonParameters>]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.