Ask a Question related to ASP.NET General, Design and Development.
-
Floela #1
System.InvalidCastException: Specified cast is not valid
I keep geting the exception:
System.InvalidCastException: Specified cast is not valid.
I get this when I try to pass a DataRow into an object method. The line that
causes this error is:
policy.SetValues(dr);
Here is part of the class that contains the method that I want to call:
using System;
using System.Data;
using System.Collections;
namespace IDUL.Policies
{
/// <summary>
/// </summary>
public class Policy
{
private int _qid;
private int _cid;
private string _policy_number;
private string _inception_date;
private string _expiry_date;
private float _raw_premium;
private float _policy_fee;
private float _admin_fee;
private float _ipt;
private float _total_premium;
private bool _is_renewal;
private string _operator;
private string _date_quoted;
private bool _on_cover;
private string _on_cover_date;
private string _on_cover_operator;
/// <summary>
/// </summary>
public Policy()
{
Trace.Constructor("Policy()");
}
/// <summary>
/// </summary>
public Policy(DataRow dr)
{
Trace.EnterConst("Policy(dr)");
if (dr != null)
{
SetValues(dr);
}
Trace.LeaveConst("Policy(dr)");
}
public void SetValues(DataRow dr)
{
_qid = (int)dr["qid"];
_cid = (int)dr["cid"];
_policy_number = dr["policy_number"].ToString();
_inception_date = dr["inception_date"].ToString();
_expiry_date = dr["expiry_date"].ToString();
_raw_premium = (float)dr["raw_premium"];
_policy_fee = (float)dr["policy_fee"];
_admin_fee = (float)dr["admin_fee"];
_ipt = (float)dr["ipt"];
_total_premium = (float)dr["total_premium"];
_is_renewal = (bool)dr["is_renewal"];
_operator = dr["operator"].ToString();
_date_quoted = dr["date_quoted"].ToString();
_on_cover = (bool)dr["on_cover"];
_on_cover_date = dr["on_cover_date"].ToString();
_on_cover_operator = dr["on_cover_operator"].ToString();
}
}
The code that instantiates the class and calls the method is in here:
foreach (DataTable dt in dsPolicies.Tables)
{
foreach (DataRow dr in dt.Rows)
{
Policy policy = new Policy();
policy.SetValues(dr);
arrPolicies.Add(policy);
}
}
Any ideas what is causing this exception?
Floela Guest
-
System.InvalidCastException was unhandled
For whatever reason, I am getting an invalidcast exception on this piece of code: gApp = CreateObject("AcroExch.App") This is just part of the... -
System.InvalidCastException in .Net client consuming Axis 1.1 java web service
Hi, I am developing a .Net client for Axis 1.1 web service written in java. The wsdl is generated using, java2WSDL with these switches:: -y WRAPPED... -
dataGrid_ItemDataBound - System.InvalidCastException
Essentially I am trying to convert a particular column in my datagrid to an hyperlink on the fly - I have pasted the relevant code and error below,... -
System.InvalidCastException: Specified cast is not valid. error when updating datagrid
Hello, I am trying to update a record using a data grid. I Have a footer column in my data grid that allows users to add a new record. However, I... -
System.InvalidCastException: Specified cast is not valid.
Hello, Does somebody haves a solution for this? Thanks! Line 74: if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType ==... -
Jon Skeet #2
Re: System.InvalidCastException: Specified cast is not valid
Floela <floela@benjamin.com> wrote:
I'm sure that's one part of the stack, but I don't think that's going> I keep geting the exception:
>
> System.InvalidCastException: Specified cast is not valid.
>
>
> I get this when I try to pass a DataRow into an object method. The line that
> causes this error is:
>
> policy.SetValues(dr);
to be the actual direct causal line. I suspect it's somewhere within
SetValues itself. Have you tried stepping through SetValues to see
where the exception is thrown?
--
Jon Skeet - <skeet@pobox.com>
[url]http://www.pobox.com/~skeet/[/url]
If replying to the group, please do not mail me too
Jon Skeet Guest
-
Christian #3
Re: System.InvalidCastException: Specified cast is not valid
that>
> I get this when I try to pass a DataRow into an object method. The lineInside SetValues there are many cast without checking,> causes this error is:
>
> policy.SetValues(dr);
>
i wonder if they are all safe ???
> public void SetValues(DataRow dr)
> {
> _qid = (int)dr["qid"];
> _cid = (int)dr["cid"];
> _raw_premium = (float)dr["raw_premium"];
> _policy_fee = (float)dr["policy_fee"];
> _admin_fee = (float)dr["admin_fee"];
> _ipt = (float)dr["ipt"];
> _total_premium = (float)dr["total_premium"];
> _is_renewal = (bool)dr["is_renewal"];
> _on_cover = (bool)dr["on_cover"];
> }
Christian Guest
-
Jon Skeet #4
Re: System.InvalidCastException: Specified cast is not valid
Floela <floela@benjamin.com> wrote:
Yes there is - you've got lots of casts in SetValues. I'm sure it'll be>> > I'm sure that's one part of the stack, but I don't think that's going
> > to be the actual direct causal line. I suspect it's somewhere within
> > SetValues itself.
> SetValues is pretty simple - just assigning the values from the DataRow to
> private variables within the class (see my original post). There's nothing
> glaring as to where the problem could be within this method.
one of those which is failing.
Ah. That's a pain. Can you print out a stack trace to show exactly>> > Have you tried stepping through SetValues to see
> > where the exception is thrown?
> No I haven't, as I'm actually coding the application using TextPad, not
> VS.NET.
where it's failing?
--
Jon Skeet - <skeet@pobox.com>
[url]http://www.pobox.com/~skeet/[/url]
If replying to the group, please do not mail me too
Jon Skeet Guest



Reply With Quote

