2015-08-19 4 views
1

У меня есть несколько Gridviews на моей странице. Источники данных должны запускаться, когда страница открыта, поэтому я не могу использовать OutputCache для всей страницы.Как использовать OutputCache только для одного Gridview?

Но 1 Gridview не имеет значения, и запрос также настолько медленный. Вот почему мне нужно кэшировать это. 1 час/1 запрос в порядке со мной.

Мое соединение:

try 
    { 
     OleDbConnection Connection1; 
     using (Connection1 = new OleDbConnection("Provider=MSDAORA.1;Data Source=DATABASE:1521/orcl;Persist Security Info=True;Password=PASSWORD;User ID=USERNAME;")) 
     { 
      string sqlQuery = "select * from TABLE"; 

      using (OleDbDataAdapter cmd = new OleDbDataAdapter(sqlQuery, Connection1)) 
      { 
       Connection1.Open(); 
       DataTable dt = new DataTable(); 
       cmd.Fill(dt); 
       GridView1.DataSource = dt; 
       GridView1.DataBind(); 
       Connection1.Close(); 
      } 
     } 
    } 
    catch (Exception) 
    { 
    } 

Как кэшировать только 1 соединение?

Могу ли я использовать OutputCache только для 1 Gridview?

Нужно ли кэшировать со стороны подключения?

+0

поместите свое gridview в пользовательский элемент управления и кешируйте пользовательский элемент управления – shreesha

+0

Можете ли вы показать мне пример этого? Спасибо. – phe

ответ

1

Использование пользовательских элементов управления в кэш-части вашей страницы

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MyUserControl.ascx.cs" Inherits="StackOverflowQuestions.UserControl.MyUserControl" %> 
<<%@ OutputCache Duration="3600" VaryByParam="none" %> 
<asp:GridView ID="gvCache" runat="server"></asp:GridView> 

поместить свой код в код behinf .cs файла Page_Load

protected void Page_Load(object sender, EventArgs e) 
     { 
      //your code here 
     } 

использовать пользовательский элемент управления на странице, как этот
зарегистрировать пользовательское управление

<%@ Register TagName="UserControl" TagPrefix="uc" Src="~/UserControl/MyUserControl.ascx" %> 

и использовать его следующим образом:

 Смежные вопросы

  • Нет связанных вопросов^_^