1

objectdatasourceは、パラメーターに応じて正しいコンストラクターを参照していません

私が持っている(縮小版)

    private int m_Code;
    private string m_FamCode;
    private string m_LastName;
    private string m_FirstName;
    private string m_Init;
    private DateTime chargeDate;
    private string tranCode;
    private decimal paidAmt;
    private string description;

次に、それぞれのget\setがあります

public int M_Code
        {
            get { return m_Code; }
            set { m_Code = value; }
        }

次に、次のような3つの異なるコンストラクターがありますが、それぞれに異なる量のプロパティを渡します。

public BBNMemberDetails(DateTime cDate, string tCode, decimal pAmt, string desc)
        {
            this.chargeDate = cDate;
            this.tranCode = tCode;
            this.paidAmt = pAmt;
            this.description = desc;
        }


 public BBNMemberDetails(int m_Code, string m_FamCode, string m_LastName, string m_FirstName, string m_Init)
    {
        this.m_Code = m_Code;
        this.m_FamCode = m_FamCode;
        this.m_LastName = m_LastName;
        this.m_FirstName = m_FirstName;
        this.m_Init = m_Init;
        this.m_Title = m_Title;

}

デフォルトのコンストラクタ

  public BBNMemberDetails() { }

何らかの理由で、参照されているコンストラクターは、すべてのプロパティを持つコンストラクターだけです。トランザクション情報を取得したいコンストラクターが参照されていません。ストアドプロシージャを参照するsqldatareaderと組み合わせてリストを使用して値を取得し、フロントエンドのobjectdatasourceだけを使用してグリッドビューにアタッチしています。しかし、私のグリッドビューには、コンストラクターに表示したいいくつかのプロパティではなく、すべてのプロパティが表示されます。

4

1 に答える 1

3

コンストラクターを呼び出すと、完全なオブジェクトが得られます。

より少ないメンバーを初期化するコンストラクターを呼び出すため、オブジェクトは単純化されません。

于 2012-10-20T16:04:52.653 に答える