2016-08-13 1 views
-3

Я просто пытаюсь восстановить резервную копию SQL на мое восстановлении сервер, и я написал сценарий, чтобы сделать это, но я получаю эту ошибку на моем PowerShell консоли:System IO DirectoryInfo

Method invocation failed because [System.IO.DirectoryInfo] does not contain a method named 'op_Addition'. 
At line:39 char:1 
+ $dbRestoreLog.LogicalFileName = $dbname + "_Log" 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : InvalidOperation: (op_Addition:String) [], RuntimeException 
    + FullyQualifiedErrorId : MethodNotFound
+0

Ну, не показывая какой-то код, что трудно помочь, но я предполагаю, что вы пытаетесь добавить строку к экземпляру System.IO.DirectoryInfo – DAXaholic

+0

Вам действительно нужно чтобы опубликовать код, создающий ошибку. –

ответ

1

От ошибки изображенного $dbname, очевидно, DirectoryInfo объект.

Мое предположение, что вы получили его через Get-Item или Get-ChildItem.

Если вы хотите LogicalFileName свойства быть именем $dbname папки со строкой "_Log" добавленной, сделайте следующее:

$dbRestoreLog.LogicalFileName = $dbname.Name + "_Log" 

В качестве альтернативы есть PowerShell неявно преобразовать $dbname в строку, поместив его в два раз -quotes (DirectoryInfo.ToString() по умолчанию используется Name собственности в любом случае):

$dbRestoreLog.LogicalFileName = "$dbname" + "_Log" 

Вы можете так же использовать -f строку оператора формата:

$dbRestoreLog.LogicalFileName = '{0}_Log' -f $dbname 
Смежные вопросы