下面是我的代码,它给出了一个错误: 无法将类型'System.Collections.Generic.List'隐式转换为'string []'
我多次尝试解决错误。但我没有这样做。 如果任何机构可以建议什么可能是解决方案..谢谢:)
public GetContentResponse GetContent(abcServiceClient client, QueryPresentationElementIDsResponse querypresentationelementresponse)
{
GetContentRequest GetContentRequest = new GetContentRequest();
GetContentResponse contentresponse = new GetContentResponse();
querypresentationelementresponse = presentationElementId(client);
List<string[]> chunks = new List<string[]>();
for (int i = 0; i < querypresentationelementresponse.IDs.Length; i += 25)
{
chunks.Add(querypresentationelementresponse.IDs.Skip(i).Take(25).ToArray());
contentresponse = client.GetContent(new GetContentRequest()
{
IDs = chunks // here i get this error
});
}
return contentresponse;
}
答案 0 :(得分:8)
您正在尝试将List分配给字符串数组。将列表转换为数组。 由于您没有准确指出错误的位置,我想当您分配ID变量时。
以下代码可以解决它:
public GetContentResponse GetContent(abcServiceClient client, QueryPresentationElementIDsResponse querypresentationelementresponse)
{
GetContentRequest GetContentRequest = new GetContentRequest();
GetContentResponse contentresponse = new GetContentResponse();
querypresentationelementresponse = presentationElementId(client);
List<string> chunks = new List<string>();
for (int i = 0; i < querypresentationelementresponse.IDs.Length; i += 25)
{
chunks.AddRange(querypresentationelementresponse.IDs.Skip(i).Take(25));
contentresponse = client.GetContent(new GetContentRequest()
{
IDs = chunks.ToArray()
});
}
return contentresponse;
}
答案 1 :(得分:1)
我不确定哪种类型的ID或哪条行给你的错误,但如果我不得不猜测,我认为它是IDs = chunks
。
听起来您正在尝试将列表转换为字符串数组。您需要使用方法转换为使用toArray()。
编辑:好的,你有一个字符串数组数组。你需要抓住正确的:
IDs = Chunks.ToArray()[index]
其中index是正确的数组。对你正在使用的库不是很熟悉,所以遗憾的是我无法详细说明。但是,要猜测,请尝试使用i
代替index
。