0

SelectCommand.Parameters の値を取得する必要があります

手伝って頂けますか ?

string sql = "SELECT area, login, senha FROM tbl_usuarios WHERE login = '" + login + "' AND senha = '" + senha + "'";
adapter = new SqlDataAdapter(sql, conn);
dataTable = new DataTable();

adapter.SelectCommand.Parameters.Add("login", DbType.String);
adapter.SelectCommand.Parameters.Add("senha", DbType.String);

string a = adapter.SelectCommand.Parameters.Add(@"area", DbType.Int16); // Error Coversion
Session.Add("ar", a);
4

4 に答える 4

2

問題は、Addメソッド(SqlParameter)からの戻りタイプを文字列に割り当てようとしていることだと思います。

SqlParameterCollection.Addメソッド(文字列、SqlDbType)を参照してください

私はあなたが探しているものは次のようなものだと思います

SqlParameter a = adapter.SelectCommand.Parameters.Add(@"area", DbType.Int16);
于 2012-07-30T04:04:35.570 に答える
0

MSDNでコードを確認してください:SqlDataAdapter.SelectCommandプロパティ

多分あなたが必要とするのは:

データテーブルの値を取得します。

string sql = "SELECT area, login, senha FROM tbl_usuarios WHERE login = '" + login + "' AND senha = '" + senha + "'";
adapter = new SqlDataAdapter(sql, conn);
dataTable = new DataTable();
adapter.Fill(dataTable);

string a  = dataTable.Rows["area"].toString(); //get area value..
Session.Add("ar", a);

よろしく

于 2012-07-30T04:05:05.053 に答える
0

質問は明確ではありませんが、AddメソッドはSqlParameterのタイプを返すため、次のようになります。

string a = adapter.SelectCommand.Parameters.Add(@"area", DbType.Int16);

間違っています..それはする必要があります:

SqlParameter a = adapter.SelectCommand.Parameters.Add(@"area", DbType.Int16);
于 2012-07-30T04:06:39.967 に答える