如何声明反序列化的类参数数组而不初始化它

本文关键字:数组 参数 初始化 何声明 声明 反序列化 | 更新日期: 2023-09-27 18:12:42

我认为这是我从前两个线程中学到的东西的延续。我将使用纯c#代替Javascript。

我有一个类,其中有3个参数,我正在创建一个变量,这是反序列化到类类型

的结果
var param = js.Deserialize<ClassName>(jqData.Params);

根据我从第一个线程中学到的东西,它根据我在3个文本框中所做的输入存储值。

对于我们的目的,让我们假设我只在三个文本框中的第二个文本框中放置了输入,所以值将是null, "abc", null

现在,我从我的第二篇文章中得到了一些非常好的建议,我想要实施。

我想创建一个对象数组,没有初始化,因为这些对象已经持有值,减少数组到1个元素的基础上的标准,从优秀的帖子,然后继续我的验证逻辑。

然而,我正在努力声明数组部分。从我在SO中看到的,大多数线程都在谈论声明和初始化这些元素。我不需要它。

我需要的是声明一个数组,其中包含类元素,例如array = [param.elem1, param.elem2, param.elem3],当我运行代码时,它将返回[null, "abc", null]

你能告诉我如何正确声明这样的数组吗?

如何声明反序列化的类参数数组而不初始化它

你的想法接近于如何处理这个问题。只需将array = [param.elem1, param.elem2, param.elem3]更改为:

var myArray = new object[] { param.elem1, param.elem2, param.elem3 };

如果你知道参数的类型。elem1/2/3,你可以使用特定的类型(例如string[]代替object[])。