スーパークラスとサブクラスがあります。データセットの値をサブクラスのプロパティ値に割り当てます。
public class Fee
{
public decimal Dollar { get; set; }
public decimal Percentage { get; set; }
}
public class AdminFee : Fee
{
}
そして私はまた、別のクラス
public class TypeFee
{
public AdminFee AdminFees { get; set;}
}
を持っていると私はそれadminFeesへのDataRow値を割り当てます。 の値を割り当てると、両方の実行時にキャストエラーまたはadminfeesフィールドのNULL値が取得されました。
Fee addfee = new Fee();
addfee.Dollar = Convert.ToDecimal(row["AdminFee"]); ////no error
TypeFee tfee = new TypeFee();
tfee.AdminFees = (AdminFee)addfee; ////cast error
tfee.AdminFees.Dollar = addfee.Dollar; ////null error
このエラーを解決するにはどうすればよいですか?
適切にフォーマットされ、[MCVE]を提供してください - 現在、あなたのコードは非常に読みにくいですし、些細なミス(代わりにクラス宣言の最後に 'public'、'() 'の' Public')を持っていますこれは*あなたが実際にテストしているコードではないことを示しています。また、.NET命名規則に従うように強くお勧めします。 –
コードをコピーするのではなく、モバイルから入力するだけです。後で編集します。 – Parami
今後はしないでください。なぜあなたが良いものを書くことができるまで待つのではなく、みんなにひどく書かれた質問をするのはなぜですか? –