0

重複の可能性:
引数を 0 個取るコンストラクターが含まれていない

接続文字列を強制的に渡すコンストラクタを持つ getData という DAL クラスがあります。

namespace AQProduct
{
  public class getData
  {
    public getData(string strConnectionString)
    {
    }
  }
 }

実際の作業を行うクラスがあります:

namespace AQProduct
{
  public class User_DL : getData
  {
  }
}

ビルドが失敗する

'AQProduct.getData' には、引数を 0 個取るコンストラクターが含まれていません

これを機能させるにはどうすればよいですか?

4

4 に答える 4

3

派生クラスにコンストラクターを追加し、接続文字列を基本クラスに渡す必要があります。

public class User_DL : getData
{
    public User_DL(string connectionString)
        : base(connectionString)
    {
    }
}
于 2012-08-29T11:54:13.030 に答える
3

(非静的)クラスでは、独自のコンストラクターを追加しない場合、次の形式で暗黙的に作成されます。

public ClassName : base() { }

つまり、基本クラスのパラメーターなしのコンストラクターを呼び出します。それは存在しないため、次のようなカスタムコンストラクターを追加する必要があります。

public User_DL() : base("some fixed value from somewhere") {}

また:

public User_DL(string connectionString) : base(connectionString) {}
于 2012-08-29T11:55:44.940 に答える
0

DALクラスにデフォルトのコンストラクターを追加する必要があります。

// Your default constructor
public getData()
{
}

または、paramsを使用したコンストラクターを派生クラスに追加します。一緒に行く:

public class User_DL : getData
{
    public User_DL(string connectionString) : base(connectionString)
    {
       // Insert code here
    }
}
于 2012-08-29T11:54:17.097 に答える
0

このコンストラクターを追加します

public User_DL(string yourConnection) : base(yourConnection)
{


}
于 2012-08-29T11:55:08.340 に答える