-7

重複の可能性:
C# .Net の DataSet にストアド プロシージャが返される

C# を使用してプロジェクトからストアド プロシージャを呼び出すにはどうすればよいですか? そのストアド プロシージャの出力をデータ テーブルに取得する必要がありますが、エラーが発生します。

コード:

private string connectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;Integrated Security=SSPI;Initial Catalog=blablalbla;";
    private DataTable dtProductPrijsActueel = new DataTable();
    public DataTable productPrijsActueel()
    {
        SqlConnection conn = new SqlConnection(connectionString);
        conn.Open();
        SqlCommand comm = conn.CreateCommand();
        comm.CommandType = CommandType.StoredProcedure;
        comm.CommandText = "procSelectPrijsActueel";

        dtProductPrijsActueel.Load(comm.ExecuteReader());
        conn.Close();
        conn.Dispose();

        return dtProductPrijsActueel;
    }

エラー:

ERROR : KEYWORD NOT SUPPORTED : 'PROVIDER'
4

1 に答える 1

1

これは実際にはググればよかったのですが、探している一般的なコードは次のようになります。

  string connect = System.Configuration.ConfigurationManager.AppSettings["conn"];
  SqlConnection connection = new SqlConnection(connect);
  string spName = "TheSpName";

  SqlCommand spCmd = new SqlCommand(spName, connection);
  spCmd.CommandType = CommandType.StoredProcedure;

  spCmd.Parameters.Add("@SomeParam", SqlDbType.String).Value = "Some Parameter";

  connection.Open();

  var dataTableReader = spCmd.ExecuteReader();
于 2012-11-28T21:01:10.077 に答える