当前位置:  开发笔记 > 编程语言 > 正文

将int转换为int []

如何解决《将int转换为int[]》经验,为你挑选了2个好方法。

我有一个数据集,我试图将数据集的所有ID都放入数据行,最后将其保存在一个int数组中.它不适合我.它说"Cannot implicitly convert from type int to int[]"

Dataset ds = new BusinessLogic().Getsamples(MerchantID);

Datarow dr = ds.Tables[0].Rows[0];

int[] SampleID = Convert.ToInt32(dr["Id"]);

提前致谢..



1> OmerGertel..:

你必须创建一个新的int数组并将int放在那里.

int sampleID = new int[1];
sampleID[0] = Convert.ToInt32(dr["Id"]);

我认为这个简写也适用:

int[] SampleID = new int[]{Convert.ToInt32(dr["Id"])};



2> Jon Skeet..:

嗯,是.看看这一行:

int[] SampleID = Convert.ToInt32(dr["Id"]);

右侧是int(结果Convert.ToInt32),但您正在尝试将其转换为数组.

如果你想要所有的ID,我建议你创建一个List并遍历行,调用list.Add(Convert.ToInt32(dr["Id"])每一行,然后ToArray()如果你真的需要,最后调用.

或者,使用LINQ - 类似于:

int[] ids = ds.Tables[0].AsEnumerable()
                        .Select(dr => dr.Field("Id"))
                        .ToArray();

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有