O caminho físico do site no disco do servidor: HttpRuntime.AppDomainAppPath
Caminho do programa virtual: HttpRuntime.AppDomainAppVirtualPath
Quaisquer métodos relacionados a Request/HttpContext.Current, etc., só podem ser usados quando há um contexto ou página de solicitação. Ou seja, quando não há contexto de solicitação, HttpContext.Current é nulo.
O mesmo se aplica ao acesso a objetos de Cache globais.
================================================= ===============================
Exemplo: caminho do site asp.net de saída.
resposta nula privadaHtml()
...{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(string.Format("Hora atual: {0}", Server.HtmlEncode(DateTime.Now.ToString())));
sb.Append("<br />");
sb.Append(string.Format("O caminho virtual da solicitação atual: {0}",Server.HtmlEncode(Request.CurrentExecutionFilePath)));
sb.Append("<br />");
sb.Append(string.Format("Obter o caminho do diretório raiz do aplicativo atual: {0}", Server.HtmlEncode(Request.ApplicationPath)));
sb.Append("<br />");
sb.Append(string.Format("O caminho virtual da solicitação atual: {0}",Server.HtmlEncode(Request.FilePath)));
sb.Append("<br />");
sb.Append(string.Format("O caminho virtual da solicitação atual: {0}",Server.HtmlEncode(Request.Path)));
sb.Append("<br />");
sb.Append(string.Format("Obter o caminho do sistema de arquivos físico do diretório raiz do aplicativo atualmente em execução: {0}", Server.HtmlEncode(Request.PhysicalApplicationPath)));
sb.Append("<br />");
sb.Append(string.Format("Obter o caminho do sistema de arquivos físico correspondente ao URL solicitado: {0}", Server.HtmlEncode(Request.PhysicalApplicationPath)));
sb.Append("<br />");
Response.Write(sb.ToString());
}
}
Resultado: Hora atual: 30/08/2007 11:03:49
O caminho virtual da solicitação atual: /aDirectory/Sample/responseHtml.aspx
Obtenha o caminho do diretório raiz do aplicativo atual: /aDirectory
O caminho virtual da solicitação atual: /aDirectory/Sample/responseHtml.aspx
O caminho virtual da solicitação atual: /aDirectory/Sample/responseHtml.aspx
Obtenha o caminho do sistema de arquivos físico do diretório raiz do aplicativo atualmente em execução: E:Visual Studio 2005
Obtenha o caminho do sistema de arquivos físico correspondente à URL solicitada: E:Visual Studio 2005\aDirectory
Na programação ASP.NET, muitas vezes é necessário usar Request para obter informações sobre a URL.
O endereço da URL de teste é http://www.test.com/testweb/default.aspx e os resultados são os seguintes:
Solicitação.ApplicationPath: /testweb
Request.CurrentExecutionFilePath: /testweb/default.aspx
Solicitação.FilePath: /testweb/default.aspx
Solicitação.Caminho: /testweb/default.aspx
Solicitação.PathInfo:
Solicitação.PhysicalApplicationPath: E:WWWtestweb
Solicitação.PhysicalPath: E:WWWtestwebdefault.aspx
Solicitação.RawUrl: /testweb/default.aspx
Request.Url.AbsolutePath: /testweb/default.aspx
Request.Url.AbsoluteUri: http://www.test.com/testweb/default.aspx
Solicitação.Url.Host: www.test.com
Request.Url.LocalPath: /testweb/default.aspx
Você pode usar isso quando houver parâmetros na URL:
HttpContext.Current.Request.Url.PathAndQuery.ToString()//
O endereço desta página: Request.URL;
Endereço da página anterior:
Solicitação.UrlReferrer
Solicitação.ServerViables["http_referer"]
Solicitação.RawUrl
Solicitação.RawUrl.QueryAndPath
System.IO.Path.GetFileName(Request.FilePath.ToString())
O tipo HttpRequest expõe os seguintes membros.
Descrição do nome do construtor
Infraestrutura HttpRequest. Inicialize o objeto HttpRequest.
Descrição do nome do método principal
BinaryRead Executa uma leitura binária do número especificado de bytes do fluxo de entrada atual.
Equals determina se o Object especificado é igual ao Object atual. (Herdado de Objeto.)
Finalizar permite que um Objeto tente liberar recursos e realizar outras operações de limpeza antes que a Coleta de Lixo recupere o Objeto. (Herdado de Objeto.)
GetHashCode é usado como uma função hash para um tipo específico. (Herdado de Objeto.)
GetType Obtém o tipo da instância atual. (Herdado de Objeto.)
MapImageCoordens mapeia parâmetros de formulário de campo de imagem de entrada para valores apropriados de coordenadas x e y.
MapPath foi recarregado. Mapeia o caminho virtual na URL solicitada para um caminho físico no servidor para a solicitação atual.
MemberwiseClone cria uma cópia superficial do objeto atual. (Herdado de Objeto.)
SaveAs Salva a solicitação HTTP em disco.
ToString retorna uma String representando o Objeto atual. (Herdado de Objeto.)
ValidateInput valida coleções acessadas por meio das propriedades Cookies, Form e QueryString.
Descrição do nome do atributo principal
AcceptTypes Obtém uma matriz de strings de tipos de aceitação MIME suportados pelo cliente.
AnonymousID Obtém o identificador anônimo deste usuário, se existir.
ApplicationPath Obtém o caminho raiz do aplicativo virtual do aplicativo ASP.NET no servidor.
AppRelativeCurrentExecutionFilePath Obtém o caminho virtual para a raiz do aplicativo e torna o caminho relativo usando a notação til (~) para a raiz do aplicativo (por exemplo, no formato "~/page.aspx").
Navegador Obtém ou define informações sobre os recursos do navegador do cliente solicitante.
ClientCertificate Obtém o certificado de segurança do cliente para a solicitação atual.
ContentEncoding Obtém ou define o conjunto de caracteres do corpo da entidade.
ContentLength especifica o comprimento do conteúdo enviado pelo cliente, em bytes.
ContentType Obtém ou define o tipo de conteúdo MIME da solicitação recebida.
Cookies Obtém a coleção de cookies enviados pelo cliente.
CurrentExecutionFilePath Obtém o caminho virtual da solicitação atual.
FilePath Obtém o caminho virtual da solicitação atual.
Arquivos Obtém uma coleção de arquivos carregados pelo cliente em formato MIME multiparte.
Filter Obtém ou define o filtro a ser usado ao ler o fluxo de entrada atual.
Form Obtém a coleção de variáveis do formulário.
Headers Obtém a coleção de cabeçalhos HTTP.
HttpMethod Obtém o método de transferência de dados HTTP usado pelo cliente (como GET, POST ou HEAD).
InputStream Obtém o conteúdo do corpo da entidade HTTP de entrada.
IsAuthenticated Obtém um valor que indica se a solicitação foi autenticada.
IsLocal Obtém um valor que indica se a solicitação veio do computador local.
IsSecureConnection Obtém um valor que indica se a conexão HTTP usa soquetes seguros (ou seja, HTTPS).
Item Obtém o objeto especificado da coleção Cookies, Form, QueryString ou ServerVariables.
LogonUserIdentity Obtém o tipo WindowsIdentity do usuário atual.
Params Obtém a coleção combinada de itens QueryString, Form, ServerVariables e Cookies.
Path obtém o caminho virtual da solicitação atual.
PathInfo Obtém informações de caminho adicionais para um recurso com uma extensão de URL.
PhysicalApplicationPath Obtém o caminho do sistema de arquivos físico para o diretório raiz do aplicativo de servidor em execução no momento.
PhysicalPath Obtém o caminho do sistema de arquivos físico correspondente ao URL solicitado.
QueryString Obtém a coleção de variáveis de string de consulta HTTP.
RawUrl Obtém o URL original da solicitação atual.
RequestType Obtém ou define o método de transmissão de dados HTTP (GET ou POST) usado pelo cliente.
ServerVariables Obtém uma coleção de variáveis de servidor Web.
TotalBytes Obtém o número de bytes no fluxo de entrada atual.
Url Obtém informações sobre o URL solicitado no momento.
UrlReferrer Obtém informações sobre a última URL solicitada pelo cliente, que está vinculada à URL atual.
UserAgent Obtém as informações originais do agente do usuário do navegador cliente.
UserHostAddress Obtém o endereço IP do host do cliente remoto.
UserHostName Obtém o nome DNS do cliente remoto.
UserLanguages Obtém uma matriz de strings classificada de preferências de idioma do cliente.
1.Request.ApplicationPath->O diretório do aplicativo atual O autor não entrou em contato com o jsp, ficará muito claro que ApplicationPath se refere ao diretório correspondente ao aplicativo atual. aplicativo) - por exemplo, há um em meu servidor. Ambos os nomes de domínio de aplicativos da web são MySite.com, um mapeia para o diretório MySite.com/1/ e o outro faz alusão a http://MySite.com/2/.
Então MySite.com/1/ é o ApplicationPath do primeiro aplicativo. Da mesma forma, MySite.com/2/ é o ApplicationPath do segundo aplicativo.
2.Request.FilePath-> corresponde ao diretório virtual do iis, como URL http://MySite.com/1/index.html/pathinfo
Caminho do arquivo = /1/index.html
3.Request.Path->Caminho virtual da solicitação atual
Path é a concatenação das caudas FilePath e PathInfo. Por exemplo URL http://MySite.com/1/index.html/pathinfo
Então Caminho = /1/index.html/pathinfo
4.Request.MapPath (string url) -> Mapeie a url para um diretório virtual no iis. Este diretório é relativo ao diretório raiz do aplicativo. Comparado com Server.MapPath, é compreensível que não contenha um caminho como. c:/ é um caminho relativo (o Server.MapPath comparado é um caminho absoluto)
5.Server.MapPath (string url) -> Mapeie o URL para um caminho físico no servidor. Por exemplo, http://MySite.com/1/index.html assumindo que seu aplicativo esteja em c:/iis/MySite, então é c:/iis/MySite/1/index.html
Requst.FilePath obtém o caminho virtual da solicitação atual. A propriedade FilePath não contém o trailer PathInfo. Por exemplo, para a URL http://www.contoso.com/virdir/page.html/tail , o valor FilePath é /virdir/page.html.
================================================= ================================================= ===========================
Request.Path obtém o caminho virtual da solicitação atual. Path é a concatenação das caudas FilePath e PathInfo. Por exemplo, para a URL http://www.contoso.com/virdir/page.html/tail , o Caminho é /virdir/page.html/tail.
================================================= ================================================= ===========================
O método Request.MapPath mapeia o caminho virtual especificado para um caminho físico.
O exemplo de código a seguir usa o método MapPath para converter um caminho virtual em um caminho físico totalmente qualificado no servidor. Este exemplo consiste em duas partes:
A página .aspx mapeia o caminho, lê o arquivo e exibe os resultados da operação de leitura.
Classe UpperCaseFilterStream que altera todos os caracteres passados por ela para letras maiúsculas.
A primeira parte do exemplo mostra como usar o método MapPath para converter um caminho virtual em um caminho físico totalmente qualificado. Posteriormente, esse caminho físico é passado para o objeto StreamReader, que contém o conteúdo do arquivo. Em seguida, chame o método Write para exibir o conteúdo do arquivo na página. A propriedade Filter é usada para anexar um filtro ao fluxo de resposta que faz com que o texto exibido na página fique em letras maiúsculas.
-