hamid_0341
شنبه 20 تیر 1394, 10:17 صبح
با سلام
بنده توی یک وبسایت نیاز دارم تفییرات توی دیتابیس رو بررسی کنم الان برای این کار از dependency استفاده میکنم ولی وقتی توی دیتابیس تغییری ایجاد میکنم در برنامه onchange رخ نمیدهد.
بهترین روش برای این کار چی هستش ؟
ممنون میشم راهنمایی کنید.
void Application_Start(object sender, EventArgs e)
{
SqlDependency.Start(ConfigurationManager.Connectio nStrings["TConnectionString"].ConnectionString);
}
void Application_End(object sender, EventArgs e)
{
SqlDependency.Stop(ConfigurationManager.Connection Strings["TConnectionString"].ConnectionString);
}
void SomeMethod()
{
SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrin gs["TConnectionString"].ConnectionString);
using (SqlCommand command = new SqlCommand(
"SELECT Id,Name FROM dbo.Test_Table",
connection))
{
SqlDependency dependency = new SqlDependency(command);
dependency.OnChange += new
OnChangeEventHandler(OnDependencyChange);
SqlDataAdapter dataAdapter = new SqlDataAdapter(command);
DataTable table = new DataTable();
dataAdapter.Fill(table);
GridView1.DataSource = table;
GridView1.DataBind();
}
}
void OnDependencyChange(object sender,
SqlNotificationEventArgs e)
{
SqlDependency dependency = sender as SqlDependency;
dependency.OnChange -= OnDependencyChange;
Label1.Text = "Change";
SomeMethod();
}
بنده توی یک وبسایت نیاز دارم تفییرات توی دیتابیس رو بررسی کنم الان برای این کار از dependency استفاده میکنم ولی وقتی توی دیتابیس تغییری ایجاد میکنم در برنامه onchange رخ نمیدهد.
بهترین روش برای این کار چی هستش ؟
ممنون میشم راهنمایی کنید.
void Application_Start(object sender, EventArgs e)
{
SqlDependency.Start(ConfigurationManager.Connectio nStrings["TConnectionString"].ConnectionString);
}
void Application_End(object sender, EventArgs e)
{
SqlDependency.Stop(ConfigurationManager.Connection Strings["TConnectionString"].ConnectionString);
}
void SomeMethod()
{
SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrin gs["TConnectionString"].ConnectionString);
using (SqlCommand command = new SqlCommand(
"SELECT Id,Name FROM dbo.Test_Table",
connection))
{
SqlDependency dependency = new SqlDependency(command);
dependency.OnChange += new
OnChangeEventHandler(OnDependencyChange);
SqlDataAdapter dataAdapter = new SqlDataAdapter(command);
DataTable table = new DataTable();
dataAdapter.Fill(table);
GridView1.DataSource = table;
GridView1.DataBind();
}
}
void OnDependencyChange(object sender,
SqlNotificationEventArgs e)
{
SqlDependency dependency = sender as SqlDependency;
dependency.OnChange -= OnDependencyChange;
Label1.Text = "Change";
SomeMethod();
}