gpt4 book ai didi

c# - 错误 : Argument 1: cannot convert from 'int?[]' to 'object[]'

转载 作者:行者123 更新时间:2023-12-04 02:45:07 27 4
gpt4 key购买 nike

我正在尝试使用 Visual Studio 2012、MVC 4、C# 和内置报告系统创建报告。我正在使用一个存储过程来联合和加入大约 13 个表我知道这是我脑死亡的时刻,但是当我试图将一个数组从一个存储过程填充到一个 ddl 中时,我遇到了问题以下错误:

Argument 1: cannot convert from 'int?[]' to 'object[]'

代码如下:

public frm100percentQA()
{
InitializeComponent();
this.comboBox2.Visible = true;
this.comboBox2.Items.Clear();
List<Int32?> users = (from c in new NHISLINQ.NHISLINQDataContext().sp100PercentlQualityAssurance() where c.UserID != '0' select c.UserID).ToList();
this.comboBox2.Items.Add("<---Select UserID--->");
this.comboBox2.Items.Add("Select All");
this.comboBox2.Items.AddRange(users.ToArray());
this.comboBox2.SelectedIndex = 0;
}

我知道这可能是一个相当简单的解决方案,但此时我还是一片空白。有什么帮助吗?

最佳答案

问题是您不能将 Int 数组添加到 Object 数组。尽管您可能认为这应该是可能的,但事实并非如此。这称为协方差。

在将它们添加到对象数组之前,您应该首先将所有值转换为对象。您可以在一行中使用 Linq 来做到这一点:

this.comboBox2.Items.AddRange(users.Cast<object>().ToArray());

关于c# - 错误 : Argument 1: cannot convert from 'int?[]' to 'object[]' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18982751/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com