O'Reilly logo

C# in a Nutshell by Peter Drayton, Ted Neward, Ben Albahari

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

FileWebRequest

Synopsis

This subclass of WebRequest provides access to resources that use the file URL scheme (such as a file on your local filesystem). Use WebRequest.Create() with a file:// URL to create an instance of this class. The WebRequest.Create() method returns an instance of this class as a reference of type WebRequest.

You may feel a small sense of confusion regarding this type and the “file:” protocol scheme; if a program needs access to a file on the filesystem, why not simply open a System.IO.FileStream instead of using WebRequest.Create("file:/...")? In terms of straight functionality, the System.IO.FileStream call more closely represents the fact that this resource is coming from disk; however, due to the ubiquity of HTTP servers growing within the enterprise, there are often times when a system wishes to equally represent HTTP URLs and filesystem paths within an arbitrary context. For example, a configuration file might be used to indicate where to retrieve user preferences; by specifying the location as an URL rather than an absolute file location, storage of user preferences is permitted on a centralized server without any additional code. (This allows a kind of “roaming preferences” capability within the system.) Many of the .NET tools also use this approach to identify “files” to act upon via command-line parameters.

public class FileWebRequest : WebRequest {
// Protected Constructors
   protected method FileWebRequest( System.Runtime.Serialization.SerializationInfo ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required