C# 未处理的强制转换异常错误
我得到以下异常: 无法将“System.Collections.Generic.List`1[test.Form1+comodity]”类型的对象强制转换为“System.Collections.Generic.List`1[test.Form2+comodity]”类型 对于这一行:C# 未处理的强制转换异常错误,c#,exception,C#,Exception,我得到以下异常: 无法将“System.Collections.Generic.List`1[test.Form1+comodity]”类型的对象强制转换为“System.Collections.Generic.List`1[test.Form2+comodity]”类型 对于这一行: comodityData = (List<comodity>)tf.Deserialize(ts); comodityData=(List)tf.反序列化(ts); 我不知道为什么。我以前从未遇到
comodityData = (List<comodity>)tf.Deserialize(ts);
comodityData=(List)tf.反序列化(ts);
我不知道为什么。我以前从未遇到过这种错误。有人能帮我吗
完整代码供参考:
namespace test
{
public partial class Form2 : Form
{
public float Alligor;
public float Briochit;
public float Chollonin;
public float Espitium;
public float Hydrobenol;
public float Isopropenetol;
public float Metachropin;
public float Phlobotil;
public float Plasteosine;
public float Polynitrocol;
public float Polynucleit;
public float Prilumium;
public float Statchanol;
public float Titanium;
public float Vitricyl;
public float AlligorInput;
public float BriochitInput;
public float CholloninInput;
public float EspitiumInput;
public float HydrobenolInput;
public float IsopropenetolInput;
public float MetachropinInput;
public float PhlobotilInput;
public float PlasteosineInput;
public float PolynitrocolInput;
public float PolynucleitInput;
public float PrilumiumInput;
public float StatchanolInput;
public float TitaniumInput;
public float VitricylInput;
public float costofAlligor;
public float costofBriochit;
public float costofChollonin;
public float costofEspitium;
public float costofHydrobenol;
public float costofIsopropenetol;
public float costofMetachropin;
public float costofPhlobotil;
public float costofPlasteosine;
public float costofPolynitrocol;
public float costofPolynucleit;
public float costofPrilumium;
public float costofStatchanol;
public float costofTitanium;
public float costofVitricyl;
public double totalCost;
public class comodity
{
public float comodityPrice;
}
private List<comodity> comodityData = new List<comodity>();
private comodity o1 = null;
private comodity o2 = null;
private comodity o3 = null;
private comodity o4 = null;
private comodity o5 = null;
private comodity o6 = null;
private comodity o7 = null;
private comodity o8 = null;
private comodity o9 = null;
private comodity o10 = null;
private comodity o11 = null;
private comodity o12 = null;
private comodity o13 = null;
private comodity o14 = null;
private comodity o15 = null;
public Form2()
{
InitializeComponent();
o1 = new comodity();
o2 = new comodity();
o3 = new comodity();
o4 = new comodity();
o5 = new comodity();
o6 = new comodity();
o7 = new comodity();
o8 = new comodity();
o9 = new comodity();
o10 = new comodity();
o11 = new comodity();
o12 = new comodity();
o13 = new comodity();
o14 = new comodity();
o15 = new comodity();
comodityData.Add(o1);
comodityData.Add(o2);
comodityData.Add(o3);
comodityData.Add(o4);
comodityData.Add(o5);
comodityData.Add(o6);
comodityData.Add(o7);
comodityData.Add(o8);
comodityData.Add(o9);
comodityData.Add(o11);
comodityData.Add(o12);
comodityData.Add(o13);
comodityData.Add(o14);
comodityData.Add(o15);
FileStream ts = new FileStream("comoditys.dat", FileMode.Open);
BinaryFormatter tf = new BinaryFormatter();
comodityData = (List<comodity>)tf.Deserialize(ts);
ts.Close();
if (comodityData != null)
{
if (comodityData.Count > 0)
Alligor = comodityData[0].comodityPrice;
if (comodityData.Count > 1)
Briochit = comodityData[1].comodityPrice;
if (comodityData.Count > 2)
Chollonin = comodityData[2].comodityPrice;
if (comodityData.Count > 3)
Espitium = comodityData[3].comodityPrice;
if (comodityData.Count > 4)
Hydrobenol = comodityData[4].comodityPrice;
if (comodityData.Count > 5)
Isopropenetol = comodityData[5].comodityPrice;
if (comodityData.Count > 6)
Metachropin = comodityData[6].comodityPrice;
if (comodityData.Count > 7)
Phlobotil = comodityData[7].comodityPrice;
if (comodityData.Count > 8)
Plasteosine = comodityData[8].comodityPrice;
if (comodityData.Count > 9)
Polynitrocol = comodityData[9].comodityPrice;
if (comodityData.Count > 10)
Polynucleit = comodityData[10].comodityPrice;
if (comodityData.Count > 11)
Prilumium = comodityData[11].comodityPrice;
if (comodityData.Count > 12)
Statchanol = comodityData[12].comodityPrice;
if (comodityData.Count > 13)
Titanium = comodityData[13].comodityPrice;
if (comodityData.Count > 14)
Vitricyl = comodityData[14].comodityPrice;
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
AlligorInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
BriochitInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox3_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
CholloninInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox4_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
EspitiumInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox5_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
HydrobenolInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox6_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
IsopropenetolInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox7_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
MetachropinInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox8_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
PhlobotilInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox9_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
PlasteosineInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox10_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
PolynitrocolInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox11_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
PolynucleitInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox12_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
PrilumiumInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox13_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
StatchanolInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox14_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
TitaniumInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void textBox15_TextChanged(object sender, EventArgs e)
{
// 1st text box input is float
float tempFloat;
if (float.TryParse(textBox1.Text, out tempFloat))
{
VitricylInput = tempFloat;
}
else
MessageBox.Show("uh oh");
}
private void button1_Click(object sender, EventArgs e)
{
costofAlligor = Alligor * AlligorInput;
costofBriochit = Briochit * BriochitInput;
costofChollonin = Chollonin * CholloninInput;
costofEspitium = Espitium * EspitiumInput;
costofHydrobenol = Hydrobenol * HydrobenolInput;
costofIsopropenetol = Isopropenetol * IsopropenetolInput;
costofMetachropin = Metachropin * MetachropinInput;
costofPhlobotil = Phlobotil * PhlobotilInput;
costofPlasteosine = Plasteosine * PlasteosineInput;
costofPolynitrocol = Polynitrocol * PolynitrocolInput;
costofPolynucleit = Polynucleit * PolynucleitInput;
costofPrilumium = Prilumium * PrilumiumInput;
costofStatchanol = Statchanol * StatchanolInput;
costofTitanium = Titanium * TitaniumInput;
costofVitricyl = Vitricyl * VitricylInput;
totalCost = costofAlligor + costofBriochit + costofChollonin + costofEspitium + costofHydrobenol + costofIsopropenetol + costofMetachropin + costofPhlobotil + costofPlasteosine + costofPolynitrocol + costofPolynucleit + costofPrilumium + costofStatchanol + costofTitanium + costofVitricyl;
}
private void textBox16_TextChanged(object sender, EventArgs e)
{
textBox13.Text = totalCost.ToString();
}
}
}
名称空间测试
{
公共部分类表单2:表单
{
公共浮动Alligor;
公共浮球;
氯洛宁;
公众浮标;
公共浮式氢苯甲醇;
异戊烯醇;
公共浮动元氯地平;
普洛博地尔;
公众浮标塑曙红;
公共浮动多硝基酚;
公共信息技术;
公共浮动优先权;
公共浮标;Statchanol;
公众漂浮钛;
共青团,;
公共投入;
公共浮球输入;
公众浮点数;
公开募股;
公开浮点数;
公众浮存资金投入;
公共浮动元现金投入;
公共浮点数;
公共投入;
公共浮点数;
公共浮动多核输入;
公开浮动优先认沽权;
公众浮存金;
公众浮式二氧化钛;
公共投入;
公开浮动成本;
布里奇特的公共浮动成本;
可乐宁的公共浮动成本;
公众漂浮的海鞘;
羟基苯甲醇的公共浮动成本;
异丙醇的公共浮动成本;
甲基苯丙胺的公共浮动成本;
公共浮动成本;
公众漂浮的聚异戊二烯;
聚硝基酚的公开上市;
聚核技术的公共浮动成本;
公共浮动保险费;
司他卡诺的公众浮动成本;
公费浮动钛;
共青团公费浮动;
公共成本;
公共类共态
{
公费浮动;
}
私有列表comodityData=新列表();
private-comodity o1=null;
私有属性o2=null;
私有como3=null;
private-comodity o4=null;
私密性o5=null;
私密性o6=null;
私有的comodity o7=null;
private-comodity o8=null;
私密性o9=null;
私密性o10=null;
private-comodity o11=null;
私有共实体o12=null;
私密性o13=null;
私有的comodity o14=null;
私密性o15=null;
公共表格2()
{
初始化组件();
o1=新的共商品();
o2=新的共物质();
o3=新的共物质();
o4=新的共商品();
o5=新的共商品();
o6=新的共商品();
o7=新的共商品();
o8=新的共商品();
o9=新的共商品();
o10=新的共商品();
o11=新的共商品();
o12=新的共商品();
o13=新的共商品();
o14=新的共商品();
o15=新的共商品();
添加(o1);
添加(o2);
添加(o3);
添加(o4);
添加(o5);
添加(o6);
添加(o7);
添加(o8);
添加(o9);
添加(o11);
添加(o12);
添加(o13);
添加(o14);
添加(o15);
FileStream ts=新的FileStream(“comoditys.dat”,FileMode.Open);
BinaryFormatter tf=新的BinaryFormatter();
comodityData=(列表)tf.反序列化(ts);
ts.Close();
if(comodityData!=null)
{
如果(comodityData.Count>0)
Alligor=comodityData[0]。comodityPrice;
如果(comodityData.Count>1)
Briochit=comodityData[1]。comodityPrice;
如果(comodityData.Count>2)
Chollonin=comodityData[2]。comodityPrice;
如果(comodityData.Count>3)
Espitium=comodityData[3]。comodityPrice;
如果(comodityData.Count>4)
Hydrobenol=comodityData[4]。comodityPrice;
如果(comodityData.Count>5)
异戊烯醇=共二酰[5]。共二酰价格;
如果(comodityData.Count>6)
Metachropin=comodityData[6]。comodityPrice;
如果(comodityData.Count>7)
Phlobotil=comodityData[7]。comodityPrice;
如果(comodityData.Count>8)
plastosine=comodityData[8]。comodityPrice;
如果(comodityData.Count>9)
Polynitrocol=comodityData[9]。comodityPrice;
如果(comodityData.Count>10)
Polynucleit=comodityData[10]。comodityPrice;
如果(comodityData.Count>11)
Prilumium=comodityData[11]。comodityPrice;
如果(comodityData.Count>12)
Statchanol=comodityData[12]。comodityPrice;
如果(comodityData.Count>13)
钛=共二氢数据[13]。共二氢价格;
如果(comodityData.Count>14)
玻尿酸=comodityData[14]。comodityPrice;
}
}
私有void textBox1\u TextChanged(对象发送方,事件参数e)
{
//第一个文本框输入为float
浮动时间浮动;
if(float.TryParse(textBox1.Text,out tempFloat))
{
AlligorInput=tempFloat;
}
其他的
MessageBox.Show(“uh-oh”);
}
私有void textBox2_TextChanged(对象发送方,事件参数e)
{
//第一个文本框输入为float
浮动时间浮动;
if(float.TryParse(textBox1.Text,out tempFloat))
{
布里奥
List<Person> personlist = new List<Person>() { ... };
List<object> objectList = personlist.Cast<object>();