1

私はこのコードを持っています:

public void nactiData()
{
        SqlCommand cm = new SqlCommand("SELECT * FROM zajezd WHERE akce="+nc_zajezd_vyber, con); 
        con.Open();
        SqlDataReader reader = cm.ExecuteReader();

        if (reader.Read())
        {
            zpocdnu.Text = reader.GetInt32(31).ToString();
            zcena3.Text = reader.GetDecimal(6).ToString();
        }

        con.Close();
    }

zcena3問題は、テーブルのデータ型が であるため読み取れないことですnumeric

Microsoft の Web サイトには で読むように書かれていますGetDecimalが、それも機能しません。

解決策はありますか?

4

1 に答える 1

3

(あなたは自分で問題を解決しましたが、次のことを提案させてください。)

SQL Server データ リーダーを扱っているため、GetSqlDecimal代わりにGetDecimal次を使用します。

  • パフォーマンスが少し向上するはずです (不要な変換を行わないため)。
  • (戻り値NULLのプロパティを介して)処理することもできます。IsNullSqlDecimal
于 2013-07-06T09:25:22.473 に答える