PDA

View Full Version : تغییر SP در یک Data Source‌ در COde Behind



Kamarian.Reza
یک شنبه 17 آذر 1392, 19:40 عصر
سلام

بنده می‌خوام چند گزارش رو که در مقدار 1 فیلد تفاوت دارند، با استفاده از Data Source گرفته و نتیجه رو بریزم توی یک Grid View

حالا می‌خوام بر اساس انتخاب کاربر، توی کدنویسی، SP رو عوض کنم و نتیجه رو توی Grid بروز کنم

چطور میشه این کار رو انجام داد؟
(با این توضیح که نمی‌خوام از چند Data Source استفاده کنم)

anvar
دوشنبه 18 آذر 1392, 08:12 صبح
می تونی از دستورات شرط برای تعیین ایتم انتخابی کاربر استفاده کنی و دستور مورد نظر خودت رو اجرا کنی.


CREATE PROCEDURE [dbo].[mytable]
(
@selectedvalue int

)

AS

if(selectedvalue = 1)
{
Select 1
}
else if(selectedvalue = 2)
{
Select 2
}
else if(selectedvalue = 3)
{
select 3
}

Kamarian.Reza
دوشنبه 18 آذر 1392, 12:07 عصر
ممنون بابت راهنمایی شما، به جواب رسیدم

چندتا SP دارم، که همه یه نوع خروجی دارند
حالا می‌خوام بر حسب انتخاب کاربر، Data Source اون SP مورد نظر رو اجرا کنه و Grid View نتیجه رو نشون بده

اگه نوع گزارشات رو توی یک DropDownList بریزیم، حاصل این میشه



switch (ddlReport.SelectedValue)
{
case "0":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_AllEmployees";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}

case "1":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_ActiveEmployees";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}

case "2":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_PassiveEmployees";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}

case "3":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_AllCustomers";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}

case "4":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_ActiveCustomers";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}

case "5":
{
dsUsers.ConnectionString = ConfigurationManager.ConnectionStrings["SSDB"].ConnectionString;
dsUsers.SelectCommand = "Users_Select_PassiveCustomers";
dsUsers.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;

break;
}
}