Powershell和Web服务:其中一个参数是DateTime..如何传递该值



通过PowerShell,我正在调用SOA服务。除了一个字段是DateField 外,调用正常

$dataTeste = '09-JAN-18'
$dataTeste = [datetime]::ParseExact($dataTeste, "dd-MMM-yy", $null)
$dataTesteSeg = $dataTeste.ToString("yyyy-MM-dd")
$dataTesteSeg | Out-File -FilePath C:temptestefileseg.txt -Append
$posTangivelGerarReqAud.idSistemaOrigem = "PowerShell"  
$posTangivelGerarReqAud.idUtilizador = "user186"
$posTangivelGerarReqAud.tsInvocacao = $dataTesteSeg
$posTangivelGerarReqGen.idDocumento = "DRU_0012"
$posTangivelGerarReqGen.tipoEvento = "E"
$posTangivelGerarReqAud.tsInvocacao | Out-File -FilePath C:temptestefile.txt -Append

因此,为了调试这个过程,我将变量写入日志文件,这样我就可以告诉你$dataTesteSeg的值为"2018-01-09",这是我假装传递给webservice的值,然而,在我将变量与webservice参数关联后,它变得不同了。在调试文件$posTangivelGerardReqAud.tsInvocacao变为"Tuesday,January 92018 12:00:00 AM"。如何强制webservice字段的格式为"yyyy-MM-dd"。

谢谢!

尝试

$dataTesteSeg = Get-Date $dataTeste -UFormat '%Y-%m-%d'

有关详细信息,请参见Get-Help Get-Date -Full

试试这个

get-date $posTangivelGerarReqAud.tsInvocacao -Format "yyyy-MM-dd"

当您在下面运行时,您正在为DateTime对象分配日期。

$posTangivelGerarReqAud.tsInvocacao = $dataTesteSeg

当您运行下面的行时,它以默认的DateTime格式输出。

$posTangivelGerarReqAud.tsInvocacao
Get-date
[datetime]::now

您可以将DateTime对象转换为所需的格式。

get-date $posTangivelGerarReqAud.tsInvocacao -Format "yyyy-MM-dd"
get-date -Format "yyyy-MM-dd"

我希望下面的代码能启动你的项目。

$dataTeste = '09-JAN-18'
$dataTeste = [datetime]::ParseExact($dataTeste, "dd-MMM-yy", $null)
$dataTesteSeg = $dataTeste.ToString("yyyy-MM-dd")
$posTangivelGerarReqAud.idSistemaOrigem = "PowerShell"  
$posTangivelGerarReqAud.idUtilizador = "user186"
$posTangivelGerarReqAud.tsInvocacao = $dataTesteSeg
$posTangivelGerarReqGen.idDocumento = "DRU_0012"
$posTangivelGerarReqGen.tipoEvento = "E"

$myObject = [PSCustomObject]@{
idSistemaOrigem     = $($posTangivelGerarReqAud.idSistemaOrigem)
idUtilizador        = $($posTangivelGerarReqAud.idUtilizador)
tsInvocacao         = $(get-date $posTangivelGerarReqAud.tsInvocacao -Format "yyyy-MM-dd")
idDocumento         = $($posTangivelGerarReqGen.idDocumento)
tipoEvento          = $($posTangivelGerarReqGen.tipoEvento)
} 
$myObject | Out-File -FilePath C:temptestefile.txt -Append

相关内容

  • 没有找到相关文章

最新更新