Как кэш ASP.NET с помощью Visual Basic.NET

Переводы статьи Переводы статьи
Код статьи: 811431 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В данной статье описаны способы управления как ASP.NET кэширует веб-страниц и объектов данных. Кэширование позволяет избежать повторного создания сведения, при внесении последующих запросов. Кэширование — важная методика для Создание высокопроизводительных и масштабируемых серверных приложений. В первом запрос страницы, можно хранить объекты данных, страниц или частей страницы в памяти. Эти элементы могут сохраняться на веб-сервере, на прокси-сервер или на веб-обозревателе.

Дополнительная информация

ASP.NET предоставляет удобные методы для управления кэшированием. Вы можно использовать @ OutputCache директивы для управления кэширование выходных данных страницы в ASP.NET. Использование HttpCachePolicy класс для хранения произвольных объектов, таких как наборы данных на сервер память. Кэш можно хранить в приложениях, таких как обозреватель клиента прокси-сервера и службы информации Microsoft Интернета (IIS). С помощью Заголовок HTTP Cache-Control, можно управлять кэшированием.

Для дополнительной сведения об ASP.NET кэширование выходных данных, щелкните следующий номер статьи номер статьи базы знаний Майкрософт:
308516Способы управления страницы кэширование выходных данных в ASP.NET с помощью Visual Basic.NET

Кэш ASP.NET страниц

Можно кэшировать с помощью @ OutputCache директива или программно через код с помощью Visual Basic .NET или Visual C#.NET. В @ OutputCache Директива содержит Расположение атрибут. Этот атрибут определяет расположение для кэширования элемент. Можно указать одно из следующих мест:
  • Любой -Это хранится в кэше выходных данных обозреватель пользователя, на прокси-сервер (или любом другом сервере), принимающего участие в запросе или на сервере, где запрос обрабатывается. По умолчаниюЛюбой выбран.
  • Клиент -Это хранит кэш вывода обозреватель клиента.
  • Нижестоящие -Это сохраняется в выходном кэше в кэш-памяти с поддержкой устройств (отличных от исходного сервера), которые участвуют в запрос.
  • Сервер -Это сохраняется в выходном кэше веб-сервер.
  • Нет -Это отключает вывод кэш-памяти.

Ниже приведены примеры кода для @ OutputCache директивы и эквивалентный программный код.
  • Для хранения кэша вывода в указанное время

    Декларативный подход:
    <%@ OutputCache Duration="60" VaryByParam="None" %>

    Программный подход:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
  • Для хранения кэша выходных данных в обозревателе клиента, где был сформирован запрос

    Декларативный подход:
    <%@ OutputCache Duration="60" Location="Client" VaryByParam="None" %>

    Программный подход:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Private)
    
  • Для хранения кэша вывода на любые устройства кэш-памяти с поддержкой HTTP 1.1, включая прокси-сервера и клиента, выполняющего запрос

    Декларативный подход:
    <%@ OutputCache Duration="60" Location="Downstream" VaryByParam="None" %>

    Программный подход:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
    Response.Cache.SetNoServerCaching()
  • Для хранения кэша выходных данных на веб-сервере

    Декларативный подход:
    <%@ OutputCache Duration="60" Location="Server" VaryByParam="None" %>

    Программный подход:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Server)
    
  • Кэш выходных данных для каждого HTTP-запроса, который приходит с другой город

    Декларативный подход:
    <%@ OutputCache duration="60" varybyparam="City" %>
    

    Программный подход:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
    Response.Cache.VaryByParams("City") = true
    
    Для VaryByCustom атрибут, VaryByHeader атрибут и VaryByParam атрибут @ OutputCache директивы, HttpCachePolicy Предоставляет класс VaryByHeaders свойства и VaryByParams свойство и SetVaryByCustom метод.

Отключение кэширования прокси-серверов и клиентов

Чтобы отключить кэш выходных данных для приложения ASP.NET веб-страницы на клиенте расположение и расположении прокси-сервера Расположение значение атрибута NONE, а затем установить VaryByParam значение для NONE В диалоговом окне @ OutputCache директива. Используйте следующие образцы кода для отключения клиента и кэширования прокси-серверов.
  • Декларативный подход:
    <%@ OutputCache Location="None" VaryByParam="None" %>
  • Программный подход:
    Response.Cache.SetCacheability(HttpCacheability.NoCache)

Кэш произвольные объекты в памяти сервера

ASP.NET включает в себя мощные и простые в использовании механизмом кэширования, который можно использовать для хранения объектов, требующих значительных ресурсов сервера для создания в памяти. В Кэш-памяти класс реализует этот метод. Экземпляры являются закрытыми для каждого приложения и времени жизни связано с соответствующего приложения. Кэш произвольные объекты в ASP.NET с помощью Кэш-памяти класс, выполните следующие действия:
  1. Создайте новую страницу ASP.NET веб-приложения с помощью Visual Basic .NET.
  2. По умолчанию WebForm1.aspx будет создан.
  3. В режиме HTML WebForm1.aspx, замените существующий код в следующем примере кода:
    <%@ Import Namespace="System.Data.SqlClient" %>
    <%@ Import Namespace="System.Data" %>
    <HTML>
    	<script language="vb" runat="server">
    
    		Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
    			Dim Source As DataView
    
    		'Retrieve the DataView object from the Cache class. If it does not exist, add the DataView object to the Cache class.
    
    		Source = CType(Cache("MyDataSet"), DataView)
    
    		If Source Is Nothing Then
    
    			Dim myConnection As SqlConnection = New SqlConnection("Server=ServerName; database=Pubs; user id=UID; password=PWD;")
    			Dim myCommand As SqlDataAdapter = New SqlDataAdapter("select * from Authors", myConnection)
    			Dim ds As DataSet = New DataSet()
    			myCommand.Fill(ds, "Authors")
    
    			Source = New DataView(ds.Tables("Authors"))
    			Cache("MyDataSet") = Source
    			CacheMsg.Text = "Dataset created explicitly"
    			
    		Else
    			
    			CacheMsg.Text = "Dataset retrieved from cache"
    
    		End If
    
    		' Bind the DataView object to DataGrid. 
    		MyDataGrid.DataSource = Source
    		MyDataGrid.DataBind()
    
    		End Sub
    
    	</script>
    	<body>
    		<form method="GET" runat="server" ID="Form1">
    	      <h3><font face="Verdana">Caching Data</font></h3>
    			<ASP:DataGrid id="MyDataGrid" runat="server"
    			Width="700"
    			BackColor="#ccccff"
    			BorderColor="black"
    			ShowFooter="false"
    			CellPadding=3
    			CellSpacing="0"
    			Font-Name="Verdana"
    			Font-Size="8pt"
    			HeaderStyle-BackColor="#aaaad" />
    			<p>
    			<i><asp:label id="CacheMsg" runat="server"/></i>
    	    </form>
    		</P>
    	</body>
    </HTML>
    Примечание Замените значения Имя_сервера, UID, и PWD в примере кода для SqlConnection Объект, имя сервера SQL Server, идентификатор пользователя и пароль.
  4. На Отладка меню, нажмите кнопку Начало для запуска приложения.

    Примечание При повторном запуске приложения В кэше объект будет создан заново.

Ссылки

Для дополнительной сведения, щелкните следующий номер статьи в База знаний корпорации Майкрософт:
234067Как предотвратить кэширование в обозревателе Internet Explorer
247404 Как изменить заголовок HTTP Cache-Control, при использовании служб IIS
311006 Как предотвратить веб-кэширования в Windows 2000
247389 IIS: Отключить кэширование типы MIME, определенные как
313561 Настройка заголовков HTTP для истечения срока действия содержимого в IIS


Для получения дополнительных сведений посетите веб-узел Веб-узел Майкрософт:
http://msdn2.Microsoft.com/en-us/library/xsbfdd8c (vs.71) .aspx


Свойства

Код статьи: 811431 - Последний отзыв: 14 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Ключевые слова: 
kbhowtomaster kbdatabinding kbcaching kbwebforms kbinfo kbmt KB811431 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:811431

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com