1

在 PowerShell 脚本中使用 DBUp DLL 来部署 SQL 数据库脚本。

$databaseServer = $args['localhost\SQLEXPRESS']  
$databaseName   = $args['TestDatabase']
$scriptPath     =  $args['C:\Project\cLAWin\cla\Customers\Seagull\Dev\Joshua\Src\cLA\Database\Deliveries\PatchingScripts']

Add-Type -Path 'C:\RND\PWSEHLL\DbUp-master\DbUp-master\src\dbup-sqlserver\bin\Debug\netstandard2.0\dbup-sqlserver.dll'
Add-Type -Path 'C:\RND\PWSEHLL\DbUp-master\DbUp-master\src\dbup-core\bin\Debug\netstandard2.0\dbup-core.dll'

#[Reflection.Assembly]::LoadFrom('C:\RND\PWSEHLL\DbUp-master\DbUp-master\src\dbup-sqlserver\bin\Release\netstandard1.3\System.Data.SqlClient.dll')
#Add-Type -Path 'C:\RND\PWSEHLL\DbUp-master\DbUp-master\src\dbup-sqlserver'

$dbUp = [DbUp.DeployChanges]::To
$dbUp = [SqlServerExtensions]::SqlDatabase($dbUp,"server=$databaseServer;Database=$databaseName;Trusted_Connection=True;")
$dbUp = [StandardExtensions]::WithScriptsFromFileSystem($dbUp, $scriptPath)
$dbUp = [StandardExtensions]::LogToConsole($dbUp)

$upgradeResult = $dbUp.Build().PerformUpgrade()

我正在使用上面的代码行并收到以下错误消息。

由于意外异常,升级失败:
System.IO.FileNotFoundException:无法加载文件或程序集
'System.Data.SqlClient,版本=4.1.0.0,文化=中性,
PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。
该系统找不到指定的文件。
文件名:'System.Data.SqlClient,版本=4.1.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a**'
   在 DbUp.SqlServer.SqlConnectionManager.<>c__DisplayClass0_0.<.ctor>b__0(IUpgradeLog 日志,DatabaseConnectionManager dbManager)
   在 DbUp.Engine.Transactions.DelegateConnectionFactory.CreateConnection(IUpgradeLog upgradeLog, DatabaseConnectionManager databaseConnectionManager)
   在 DbUp.Engine.Transactions.DatabaseConnectionManager.CreateConnection(IUpgradeLog upgradeLog)
   在 DbUp.Engine.Transactions.DatabaseConnectionManager.OperationStarting(IUpgradeLog upgradeLog,List`1 执行脚本)
   在 DbUp.Engine.UpgradeEngine.PerformUpgrade()

你能帮我吗,因为我拥有所有版本的 .netcore SDK。

4

0 回答 0