Data.Datatable和System.Data.Datatable有什么区别?

时间:2017-05-25 14:28:00

标签: powershell object

在PowerShell中创建创建表的脚本时,我知道有很多方法可以创建表。我想知道是否有人知道哪种方式更好,它们之间有什么区别。哪种方式最好?哪种方式更有效?

$table = New-object Data.Datatable 
$table = New-object System.Data.Datatable 

或许表格不如其他方法有效。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

没有区别。

Powershell将"假设" .NET调用的System.部分,例如:

PS C:\> New-Object System.Windows.Forms.Form

AcceptButton                       : 
ActiveMdiChild                     : 
AllowTransparency                  : False
....

PS C:\> New-Object Windows.Forms.Form

AcceptButton                       : 
ActiveMdiChild                     : 
AllowTransparency                  : False
....

两个返回的对象都是相同的,但因为System基本上是powershell中的默认值,所以它可以正常工作,还有一些其他类似的情况,例如。

PS H:\> New-Object System.Text.RegularExpressions.Regex ".+"

Options MatchTimeout      RightToLeft
------- ------------      -----------
   None -00:00:00.0010000       False

PS H:\> New-Object Regex ".+"

Options MatchTimeout      RightToLeft
------- ------------      -----------
   None -00:00:00.0010000       False

因为System.Text.RegularExpression是默认可解析的。

答案 1 :(得分:0)

主要区别在于使用全名与缩写名称。通过使用System.Data.Datatable,您已经直接告诉PowerShell在哪里提取信息以创建Datatable对象。