veniz2008
چهارشنبه 21 دی 1390, 19:26 عصر
سلام،میخوام که برای جستجوی کاربر و نمایش اطلاعات اون (در صورت وجود) از یک کلاس و از طریق stored procedure این کار رو انجام بدم،برای اینکار یک textbox و یک gridview و یک دکمه روی صفحه گذاشتم و میخوام با زدن دکمه اطلاعات کاربر نمایش داده بشه( اگر وجود نداره پیغام مناسب صادر کنه)،مشکل اینجاست که هیچی رو نمایش نمیده،توی پردازه هم تعریف کردم اگر نام کاربری وجود داشت خروجی رو 1 بفرسته،من کدهایی رو که درون دکمه و درون کلاس ایجاد شده نوشتم میذارم،دوستان لطف کنن بگن مشکل کار کجاست؟(اینم بگم که برای نمایش همه کاربران مشکلی نداره و برنامه درست کار میکنه)
کدهای کلاس:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// Summary description for myclass
/// </summary>
public class myclass
{
public static string Error = "";
SqlConnection con;
SqlCommand cmd;
SqlDataAdapter adapter;
int res;
public myclass()
{
con = new SqlConnection();
cmd = new SqlCommand();
adapter = new SqlDataAdapter();
cmd.Connection = con;
adapter.SelectCommand = cmd;
}
public void connect()
{
string cs = "Data Source=(local);Initial Catalog=Plants;Integrated Security=True";
try
{
con.ConnectionString = cs;
con.Open();
}
catch
{
Error += "خطاي 1100_خطا در اتصال به بانک اطلاعاتي";
}
}
public void disconnect()
{
con.Close();
}
public DataTable select(string userid)
{
DataTable dt = new DataTable();
try
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "search_user";
cmd.Connection = con;
SqlParameter username = new SqlParameter("@username", userid);
SqlParameter result = new SqlParameter("@result", res);
result.Direction = ParameterDirection.Output;
cmd.Parameters.Add(username);
cmd.Parameters.Add(result);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
res = int.Parse(result.Value.ToString());
if (res == 1)
adapter.Fill(dt);
else
Error = "چنین کاربری در سیستم ثبت نشده است";
}
catch
{
Error += "خطاي 1101_خطا در خواندن اطلاعات";
}
return dt;
}
}
کدهای درون دکمه:
myclass class1 = new myclass();
class1.connect();
GridView1.DataSource = class1.select(TextBox1.Text.TrimEnd());
GridView1.DataBind();
class1.disconnect();
کدهای کلاس:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// Summary description for myclass
/// </summary>
public class myclass
{
public static string Error = "";
SqlConnection con;
SqlCommand cmd;
SqlDataAdapter adapter;
int res;
public myclass()
{
con = new SqlConnection();
cmd = new SqlCommand();
adapter = new SqlDataAdapter();
cmd.Connection = con;
adapter.SelectCommand = cmd;
}
public void connect()
{
string cs = "Data Source=(local);Initial Catalog=Plants;Integrated Security=True";
try
{
con.ConnectionString = cs;
con.Open();
}
catch
{
Error += "خطاي 1100_خطا در اتصال به بانک اطلاعاتي";
}
}
public void disconnect()
{
con.Close();
}
public DataTable select(string userid)
{
DataTable dt = new DataTable();
try
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "search_user";
cmd.Connection = con;
SqlParameter username = new SqlParameter("@username", userid);
SqlParameter result = new SqlParameter("@result", res);
result.Direction = ParameterDirection.Output;
cmd.Parameters.Add(username);
cmd.Parameters.Add(result);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
res = int.Parse(result.Value.ToString());
if (res == 1)
adapter.Fill(dt);
else
Error = "چنین کاربری در سیستم ثبت نشده است";
}
catch
{
Error += "خطاي 1101_خطا در خواندن اطلاعات";
}
return dt;
}
}
کدهای درون دکمه:
myclass class1 = new myclass();
class1.connect();
GridView1.DataSource = class1.select(TextBox1.Text.TrimEnd());
GridView1.DataBind();
class1.disconnect();