Preciso usar Server.MapPath()
para combinar alguns caminhos de arquivos que guardo no web.config
.
No entanto, como Server.MapPath()
conta com o HttpContext atual (acho), não consigo fazer isso. Ao tentar usar o método, mesmo que esteja "disponível", recebo a seguinte exceção:
A operação do servidor não está disponível neste contexto.
Existe outro método que pode mapear um diretório relativo da raiz da web, como ~/App_Data/
para o caminho físico completo, como C:\inetpub\wwwroot\project\App_data\
?
c#
asp.net
global-asax
server.mappath
application-start
John Bubriski
fonte
fonte
Use
AppDomain.CurrentDomain.BaseDirectory
porqueContext
pode retornar nulo !!fonte
Quando em Global.asax, use o objeto de contexto :
context.Server.mappath ()
O contexto permite acessar também a coleção de sessões, o objeto de solicitação e o objeto de resposta. Muito útil quando você deseja registrar erros, por exemplo
fonte
Context
no Global.asax.Você pode tentar o HttpContext.Current.Server.MapPath ("/") - Foi assim que eu o referenciei antes nas aulas.
fonte