AndrewMarcovich » 22.12.2006 (Пт) 7:14
Код такой:
public partial class _Default : System.Web.UI.Page
{
string FSQLStr;
void Page_Load(object sender, EventArgs e)
{
//если не авторизованы, то идем и авторизуемся
if (!Context.User.Identity.IsAuthenticated)
Response.Redirect("login.aspx");
RefreshGrid();
}
protected void btnSend_Click(object sender, EventArgs e)
{
//собираем XML
RefreshGrid(" where ln like '" + txtSearch.Text + "%'");
}
void RefreshGrid(string Conds)
{
FSQLStr = "select id, Ln, Fn, Mn, BirthDate as [Дата Рожд]," +
"WhyReal as Причина, PassS as Серия, PassNum as Номер, PassD as [Дата выдачи]," +
"PassH as [Кем выдан], AdresRI + AdresRC + AdresRS + AdresRH + AdresRF as [Регистрация]," +
"AdresFI + AdresFC + AdresFS + AdresFH + AdresFF as [Проживание],Bank as Банк, Bank_id, status_id " +
"from vtMonkey ";
if (Conds != "")
SqlDataSource1.SelectCommand = FSQLStr + " where ln like '" + txtSearch.Text + "%'";
else
SqlDataSource1.SelectCommand = FSQLStr;
TGlob.IndexSQLStr = SqlDataSource1.SelectCommand;
GVW.DataBind();
//lblTotalRecords.Text = "Всего найдено записей: " + ((DataTable) GVW.DataSource).Rows.Count;
}
}
Выкрутился след образом: TGlob.IndexSQLStr-стат.переменная,куда я сохраняю рез-тат последнего запроса. Запрос происходит в btnSend_click. Сейчас проблема вроде решена, но мне этот способ кажется несколько извращенным. Как бы это реализовать правильнее?