OutputCacheLocation OutputCacheLocation OutputCacheLocation OutputCacheLocation Enum

Определение

Указывает допустимые значения для управления расположением кэшируемого вывода ответа HTTP для ресурса.Specifies the valid values for controlling the location of the output-cached HTTP response for a resource.

public enum class OutputCacheLocation
public enum OutputCacheLocation
type OutputCacheLocation = 
Public Enum OutputCacheLocation
Наследование
OutputCacheLocationOutputCacheLocationOutputCacheLocationOutputCacheLocation

Поля

Any Any Any Any 0

Кэш вывода может располагаться на клиенте браузера (где был сформирован запрос), на прокси-сервере (или любом другом сервере), участвующем в запросе, или на сервере, где обрабатывался запрос.The output cache can be located on the browser client (where the request originated), on a proxy server (or any other server) participating in the request, or on the server where the request was processed. Это значение соответствует значению перечисления Public.This value corresponds to the Public enumeration value.

Client Client Client Client 1

Кэш вывода расположен на клиенте браузера, где сформирован запрос.The output cache is located on the browser client where the request originated. Это значение соответствует значению перечисления Private.This value corresponds to the Private enumeration value.

Downstream Downstream Downstream Downstream 2

Кэш вывода может храниться на любом устройстве с поддержкой кэширования HTTP 1.1, кроме исходного сервера.The output cache can be stored in any HTTP 1.1 cache-capable devices other than the origin server. Сюда входят прокси-серверы и клиент, сформировавший запрос.This includes proxy servers and the client that made the request.

None None None None 4

Кэш вывода отключен для запрашиваемой страницы.The output cache is disabled for the requested page. Это значение соответствует значению перечисления NoCache.This value corresponds to the NoCache enumeration value.

Server Server Server Server 3

Кэш вывода расположен на веб-сервере, обрабатывающем запрос.The output cache is located on the Web server where the request was processed. Это значение соответствует значению перечисления Server.This value corresponds to the Server enumeration value.

ServerAndClient ServerAndClient ServerAndClient ServerAndClient 5

Кэш вывода может храниться только на исходном сервере или на запрашивающем клиенте.The output cache can be stored only at the origin server or at the requesting client. Кэширование ответов на прокси-серверах запрещено.Proxy servers are not allowed to cache the response. Это значение соответствует сочетанию значений перечислений Private и Server.This value corresponds to the combination of the Private and Server enumeration values.

Примеры

В следующем примере кода показано, как значение сервера используется для указания того, что страница должна кэшироваться на веб-сервере, на котором обрабатывается запрос.The following code example demonstrates how the Server value is used to specify that the page should be cached on the Web server where the request is processed.

<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>

// The following OutputCache directive uses the OutputCacheLocation.Server
// enumeration value to allow output caching only on the origin server.
<%@ outputcache duration="10" varybyparam="none" Location="Server" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language="C#" runat="server">

    protected void Page_Load(Object Src, EventArgs E) 
    {
        DataSet ds = new DataSet();

        FileStream fs = new FileStream(Server.MapPath("schemadata.xml"),FileMode.Open,FileAccess.Read);
        StreamReader reader = new StreamReader(fs);
        ds.ReadXml(reader);
        fs.Close();

        DataView Source = new DataView(ds.Tables[0]);

        // Use the LiteralControl constructor to create a new
        // instance of the class.
        LiteralControl myLiteral = new LiteralControl();

        // Set the LiteralControl.Text property to an HTML
        // string and the TableName value of a data source.
        myLiteral.Text = "<h6><font face=\"verdana\">Caching an XML Table: " + Source.Table.TableName + " </font></h6>";

        MyDataGrid.DataSource = Source;
        MyDataGrid.DataBind();

        TimeMsg.Text = DateTime.Now.ToString("G");

     }

  </script>

<head runat="server">
    <title>Using the OutputCacheLocation Enumeration </title>
</head>
<body>

  <h6>Using the OutputCacheLocation Enumeration </h6>
  
  <form id="form1" runat="server">
    <ASP:DataGrid id="MyDataGrid" runat="server"
      Width="900"
      BackColor="#ccccff"
      BorderColor="black"
      ShowFooter="false"
      CellPadding="3"
      CellSpacing="0"
      Font-Names="Verdana"
      Font-Size="8pt"
      HeaderStyle-BackColor="#aaaadd"
      EnableViewState="false"
    />

    <i>Page last generated on:</i> <asp:label id="TimeMsg" runat="server" />

  </form>
</body>
</html>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>

' The following OutputCache directive uses the OutputCacheLocation.Server
' enumeration value to allow output caching only on the origin server.
<%@ outputcache duration="10" varybyparam="none" Location="Server" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language="vb" runat="server">

   Protected Sub Page_Load(Src As [Object], E As EventArgs)
     Dim ds As New DataSet()
   
     Dim fs As New FileStream(Server.MapPath("schemadata.xml"),FileMode.Open,FileAccess.Read)

   
   Dim reader As New StreamReader(fs)
     
      ds.ReadXml(reader)
      fs.Close()
 
   
   Dim [Source] As New DataView(ds.Tables(0))
      
   MyDataGrid.DataSource = [Source]   
   MyDataGrid.DataBind()
   
   TimeMsg.Text = DateTime.Now.ToString("G")

 End Sub 'Page_Load 

  </script>

<head runat="server">
    <title>Using the OutputCacheLocation Enumeration </title>
</head>
<body>
  <h4>Using the OutputCacheLocation Enumeration </h4>
  
  <form id="form1" runat="server">
    <ASP:DataGrid id="MyDataGrid" runat="server"
      Width="900"
      BackColor="#ccccff"
      BorderColor="black"
      ShowFooter="false"
      CellPadding="3"
      CellSpacing="0"
      Font-Names="Verdana"
      Font-Size="8pt"
      HeaderStyle-BackColor="#aaaadd"
      EnableViewState="false"
    />

    <i>Page last generated on:</i> <asp:label id="TimeMsg" runat="server" />

  </form>
</body>
</html>

Комментарии

Значения, заданные этим перечислением, используются при включении @ OutputCache директивы в файл. aspx.The values specified by this enumeration are used when you include an @ OutputCache directive in an .aspx file. Эти значения определяют расположение кэша для выходных данных страницы.These values determine the cache location for page output. Дополнительные сведения см. в разделе Caching ASP.NET Pages.For more information, see Caching ASP.NET Pages.

Применяется к

Дополнительно