执行此代码会创建什么类型的列?
What type of columns would be created executing this code?
我创建了一个函数来读取制表符分隔的文本文件并根据其 header 排列创建数据 table。
下面是我的代码:
Private Function MakeDataTable(ByRef XSplitLine) As DataTable
Dim AMZTable As New DataTable
Dim i = 0
For Each item In XSplitLine
AMZTable.Columns.Add(XSplitLine(i).ToString)
i += 1
Next
Return AMZTable
End Function
XSplitLine
是一个数组,其中包含文本文件中的 header 名称(该文本文件中的第一行)。如您所见,我在创建列时没有提到任何数据类型,但它仍然没有任何错误地执行。
我的问题是什么类型的值可以存储在这些列中,因为我没有在代码中提到它?
列的数据类型将为 String
。
正如在 https://referencesource.microsoft.com, the used overload of DataColumnCollection.Add
calls the constructor of DataColumn
which accepts a string as argument.
This in turn calls the constructor which accepts four arguments 中所见,并将第二个参数(数据类型)设置为 typeof(string)
。
我创建了一个函数来读取制表符分隔的文本文件并根据其 header 排列创建数据 table。
下面是我的代码:
Private Function MakeDataTable(ByRef XSplitLine) As DataTable
Dim AMZTable As New DataTable
Dim i = 0
For Each item In XSplitLine
AMZTable.Columns.Add(XSplitLine(i).ToString)
i += 1
Next
Return AMZTable
End Function
XSplitLine
是一个数组,其中包含文本文件中的 header 名称(该文本文件中的第一行)。如您所见,我在创建列时没有提到任何数据类型,但它仍然没有任何错误地执行。
我的问题是什么类型的值可以存储在这些列中,因为我没有在代码中提到它?
列的数据类型将为 String
。
正如在 https://referencesource.microsoft.com, the used overload of DataColumnCollection.Add
calls the constructor of DataColumn
which accepts a string as argument.
This in turn calls the constructor which accepts four arguments 中所见,并将第二个参数(数据类型)设置为 typeof(string)
。