Export (0) Print
Expand All

HttpWebRequest.IfModifiedSince Property

Gets or sets the value of the If-Modified-Since HTTP header.

[Visual Basic]
Public Property IfModifiedSince As DateTime
[C#]
public DateTime IfModifiedSince {get; set;}
[C++]
public: __property DateTime get_IfModifiedSince();
public: __property void set_IfModifiedSince(DateTime);
[JScript]
public function get IfModifiedSince() : DateTime;
public function set IfModifiedSince(DateTime);

Property Value

A DateTime that contains the contents of the If-Modified-Since HTTP header. The default value is the current date and time.

Remarks

The IfModifiedSince property is assumed to be local time.

Example

[Visual Basic, C#, C++] The following example checks the IfModifiedSince property.

[Visual Basic] 
' Create a new 'Uri' object with the mentioned string.
Dim myUri As New Uri("http://www.contoso.com")
' Create a new 'HttpWebRequest' object with the above 'Uri' object.
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(myUri), HttpWebRequest)
' Create a new 'DateTime' object.
Dim today As DateTime = DateTime.Now
If DateTime.Compare(today, myHttpWebRequest.IfModifiedSince) = 0 Then
    ' Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
    Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
    Console.WriteLine("Response headers " + ControlChars.Cr + "{0}" + ControlChars.Cr, myHttpWebResponse.Headers)
    Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
    Dim streamRead As New StreamReader(streamResponse)
    Dim readBuff(256) As [Char]
    Dim count As Integer = streamRead.Read(readBuff, 0, 256)
    Console.WriteLine(ControlChars.Cr + "The contents of Html Page are :  " + ControlChars.Cr)
    While count > 0
        Dim outputData As New [String](readBuff, 0, count)
        Console.Write(outputData)
        count = streamRead.Read(readBuff, 0, 256)
    End While
           ' Close the Stream object.
        streamResponse.Close()
        streamRead.Close()
           ' Release the HttpWebResponse Resource.
        myHttpWebResponse.Close()
    Console.WriteLine(ControlChars.Cr + "Press 'Enter' key to continue.................")
    Console.Read()
Else
    Console.WriteLine((ControlChars.Cr + "The page has been modified since " + today))
End If

[C#] 
// Create a new 'Uri' object with the mentioned string.
Uri myUri =new Uri("http://www.contoso.com");            
// Create a new 'HttpWebRequest' object with the above 'Uri' object.
HttpWebRequest myHttpWebRequest= (HttpWebRequest)WebRequest.Create(myUri);
// Create a new 'DateTime' object.
DateTime today= DateTime.Now;
if (DateTime.Compare(today,myHttpWebRequest.IfModifiedSince)==0)
{
    // Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
    HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse();
    Console.WriteLine("Response headers \n{0}\n",myHttpWebResponse.Headers);
    Stream streamResponse=myHttpWebResponse.GetResponseStream();
    StreamReader streamRead = new StreamReader( streamResponse );
    Char[] readBuff = new Char[256];
    int count = streamRead.Read( readBuff, 0, 256 );
    Console.WriteLine("\nThe contents of Html Page are :  \n");    
    while (count > 0) 
    {
        String outputData = new String(readBuff, 0, count);
        Console.Write(outputData);
        count = streamRead.Read(readBuff, 0, 256);
    }
    // Close the Stream object.
    streamResponse.Close();
    streamRead.Close();
    // Release the HttpWebResponse Resource.
    myHttpWebResponse.Close();
    Console.WriteLine("\nPress 'Enter' key to continue.................");    
    Console.Read();
}
else
{
    Console.WriteLine("\nThe page has been modified since "+today);
}

[C++] 
// Create a new 'Uri' object with the mentioned string.
Uri* myUri = new Uri(S"http://www.contoso.com");
// Create a new 'HttpWebRequest' object with the above 'Uri' object.
HttpWebRequest* myHttpWebRequest =
   dynamic_cast<HttpWebRequest*>(WebRequest::Create(myUri));
// Create a new 'DateTime' object.
DateTime today = DateTime::Now;
if (DateTime::Compare(today, myHttpWebRequest->IfModifiedSince)==0) {
   // Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
   HttpWebResponse* myHttpWebResponse =
      dynamic_cast<HttpWebResponse*>(myHttpWebRequest->GetResponse());
   Console::WriteLine(S"Response headers \n {0}\n",
      myHttpWebResponse->Headers);
   Stream* streamResponse = myHttpWebResponse->GetResponseStream();
   StreamReader* streamRead = new StreamReader(streamResponse);
   Char readBuff[] = new Char[256];
   int count = streamRead->Read(readBuff, 0, 256);
   Console::WriteLine(S"\nThe contents of Html Page are :  \n");
   while (count > 0) {
      String* outputData = new String(readBuff, 0, count);
      Console::Write(outputData);
      count = streamRead->Read(readBuff, 0, 256);
   }
   // Close the Stream object.
   streamResponse->Close();
   streamRead->Close();
   // Release the HttpWebResponse Resource.
   myHttpWebResponse->Close();
   Console::WriteLine(S"\nPress 'Enter' key to continue.................");
   Console::Read();
} else {
   Console::WriteLine(S"\nThe page has been modified since {0}", __box( today));
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard

See Also

HttpWebRequest Class | HttpWebRequest Members | System.Net Namespace

Show:
© 2014 Microsoft