【问题标题】:How to create a list with different type of data using vb.net?如何使用 vb.net 创建具有不同类型数据的列表?
【发布时间】:2020-10-26 13:48:32
【问题描述】:

我需要创建一个包含不同数据类型元素的列表,例如:

{{10, 10}, "IT", 1, "Test", {100, 100}, "Test"} 

分别:

{object, string, integer, string, object, string}

我尝试将其声明为对象列表或使用Tuple(Of Object, String, Integer, String, Object, String) 但是当我给他们价值观时,

“数组初始值设定项的维度太少”

发生错误。

声明变量的类:

Public Class SignatureResponse

    Public signature As Tuple(Of Object, String, Integer, String, Object, String)

    Sub New()
        Me.signature = Nothing

    End Sub

    Sub New(ByVal signature As Tuple(Of Object, String, Integer, String, Object, String))
        Me.signature = signature
    End Sub
End Class

我使用参数并为其赋值的类:

Public Class Signature
      Inherits System.Web.Services.WebService

    <WebMethod()>
    <ScriptMethod(ResponseFormat:=ResponseFormat.Json, UseHttpGet:=False, XmlSerializeString:=False)>
    Public Function SendIdDocuments(ByVal idDocument As String, ByVal content As String, ByVal userId As String)
       Dim respDocs As New SignatureResponse
                respDocs.signature = {{10, 10}, "IT", 1, "Testing", {100, 100}, "Test Signature"}
             'Other part of development
            JSONString = JsonConvert.SerializeObject(respDocs)

        Return JSONString
    End Function

End Class

我只发送代码中更重要的部分,它们是使用的更多参数,可以完美运行,除了这个。

错误:

有什么帮助吗?

【问题讨论】:

  • 如果元素总是按类型排列,那么元组方法看起来很有意义。你能显示失败的代码吗?
  • 你需要一个类对象来保存你的值然后使用List(Of class)
  • 我已经编辑了这个问题,我希望我更清楚。
  • 哇.. (Object, String, Integer, String, Object, String) 作为元组很难理解。尤其是在你休假或离开公司的 6 个月内。我会创建一个具有正确属性名称的类。

标签: asp.net vb.net list arraylist tuples


【解决方案1】:

如果您使用上述旧的元组语法,则无法按照您显示的方式创建新语法。你必须这样做:

    respDocs.signature =
        New Tuple(Of Object, String, Integer, String, Object, String)({10, 10}, "IT", 1, "Testing", {100, 100}, "Test Signature")

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-09-28
  • 2018-11-04
  • 2016-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-12
  • 2021-09-09
相关资源
最近更新 更多