我写了一个代码来将上传的图像名称存储到会话列表中。 用户只能上传4张图片,因此会话中最多有4张图片名称。无法将字符串强制转换为C#中的通用列表
用户可以根据需要上传1,2,3或4张图片。如果用户只选择2个图像,会话将只有2个,所以剩下的2个会抛出索引超出限制的异常!
来处理这种情况我写了下面的代码。
string image1 = "";
string image2 = "";
string image3 = "";
string image4 = "";
var imageSessList = (List<string>)Session["Images"];
if (imageSessList != null)
{
for (int i = 0; i < imageSessList.Count; i++)
{
if (imageSessList[i] != null && i == 0)
{
image1 = imageSessList[i];
}
if (imageSessList[i] != null && i == 1)
{
image2 = imageSessList[i];
}
if (imageSessList[i] != null && i == 2)
{
image3 = imageSessList[i];
}
if (imageSessList[i] != null && i == 3)
{
image4 = imageSessList[i];
}
}
}
但现在它显示以下错误:“无法转换类型‘System.String’的对象键入“System.Collections.Generic.List”
我怎样才能解决这个问题,或者是有任何方式来完成这个功能。
这听起来像'会议[“形象”]'*包含一个*'string'作为直接'string'参考 - 不一个列表。 –
你可以请你分享你的代码如何分配一个优点'会话[“图像”] –
@StephanBauer 我已经在每行中写了以下几行: lstImageNames.Add(destFileName); context.Session [“Images”] = lstImageNames; – ace