从会话中检索数组

时间:2014-11-20 15:40:21

标签: c# asp.net

public class ForskelArray
{
    public string Name { get; set; }
    public int Forskel { get; set; }
    public int PolId { get; set; }
    public string PolImg { get; set; }
    public string Parti { get; set; }
    public double procent { get; set; }
}

 Session["Difference"] = Difference;
 Session["DifferenceLeast"] = DifferenceLeast;

 ForskelArray[] DifferenceArray = (ForskelArray[])Session["Difference"];
 ForskelArray[] DifferenceLeastArray = (ForskelArray[])Session["DifferenceLeast"];

首先我创建会话然后从会话中检索数组,但是我一直收到这个错误:

  

[A] ForskelArray []无法转换为[B] ForskelArray []。

有谁知道为什么会出现这种错误?

修改

这就是我制作阵列的方式

  ForskelArray[] Difference = new ForskelArray[p];
        ForskelArray[] DifferenceLeast = new ForskelArray[p];


 for (int i = 0; i < Politiker.Length; i++)
        {
            Difference[i] = new ForskelArray();
            Difference[i].Name = Politiker[i].Name;
            Difference[i].PolId = Politiker[i].PolId;
            Difference[i].Forskel = Politiker[i].polForskel;
            Difference[i].PolImg = Politiker[i].PolImg;
            Difference[i].Parti = Politiker[i].Parti;

            DifferenceLeast[i] = new ForskelArray();
            DifferenceLeast[i].Name = Politiker[i].Name;
            DifferenceLeast[i].PolId = Politiker[i].PolId;
            DifferenceLeast[i].Forskel = Politiker[i].polForskel;
            DifferenceLeast[i].PolImg = Politiker[i].PolImg;
            DifferenceLeast[i].Parti = Politiker[i].Parti;

        }

编辑2:

在一次又一次地检查我的代码并尝试不同的事情之后,我发现如果我将它保存在同一页面上它是有效的。然后我的问题是,如果错误可能是我的问题的第一部分,我定义“ForskelArray”,如果这部分存在于第二个文件中,我想从会话中检索数组?还是应该编辑?

1 个答案:

答案 0 :(得分:0)

错误中[A][B]在消息中附带两个相同的类型名称表示该类已定义多次,可能在另一个命名空间或另一个项目中,并且您正在尝试转换从一种类型到另一种类型。

分辨率非常简单:将类合并为一个。