在尝试使用C#将电子表格填充为两列时,我对Powershell感到困惑。首先是“开始”,这是我最需要帮助的地方。我希望它填充的日期大于给定年份的7月31日,该日期以开始时作为字符串输入。以下是我正在使用的部分内容,并且整个过程都为我提供了电子表格,但不是我需要的日期。这是开始$ dr = $ DS的行。我一直在修改表,但无济于事。
$fileyear = "2017";
###Location of default DLLs
$DllsDir = [System.IO.Path]::Combine($PSScriptRoot,"dlls")
Write-Output "Dll Path "+$DllsDir
###Load default DLLs
foreach ($dll in [System.IO.Directory]::GetFiles($DllsDir,"*.dll",
[System.IO.SearchOption]::AllDirectories))
{
[reflection.assembly]::loadfrom($dll);
}
Write-Output "Dlls loaded";
###declare objects
$DS = New-Object System.Data.DataSet;
$DS.ReadXml($DBPath,[System.Data.XmlReadMode]::Auto);
$dt = New-Object System.Data.DataTable;
$dt.Columns.Add("Start");
$dt.Columns.Add("ULIN");
$dr = $DS.Tables["LearningDelivery"].Select("LearnStartDate >
(31/07/"+$fileyear+")");
[datetime]$LearnStartDate = $dr["LearnStartDate"]
Write-Output $dt.Rows.Count;
答案 0 :(得分:0)
我猜该日期的格式不正确。格式取决于机器配置的区域。
我将使用ISO格式建立日期。例如,检查以下问题以供参考:DataTable.Select date format problem