Saya perlu menggunakan Server.MapPath()
untuk menggabungkan beberapa jalur file yang saya simpan di web.config
.
Namun, karena Server.MapPath()
bergantung pada HttpContext saat ini (menurut saya), saya tidak dapat melakukan ini. Saat mencoba menggunakan metode ini, meskipun "tersedia", saya mendapatkan pengecualian berikut:
Operasi server tidak tersedia dalam konteks ini.
Apakah ada metode lain yang dapat memetakan direktori relatif root web seperti ~/App_Data/
ke jalur fisik lengkap seperti C:\inetpub\wwwroot\project\App_data\
?
c#
asp.net
global-asax
server.mappath
application-start
John Bubriski
sumber
sumber
Gunakan
AppDomain.CurrentDomain.BaseDirectory
karenaContext
mungkin mengembalikan null !!sumber
Saat di Global.asax, gunakan objek konteks :
context.Server.mappath ()
Konteks memungkinkan Anda mengakses juga koleksi sesi, objek permintaan, objek respons. Sangat berguna saat Anda ingin mencatat kesalahan, misalnya
sumber
Context
di Global.asax.Anda bisa mencoba HttpContext.Current.Server.MapPath ("/") - Begitulah cara saya mereferensikannya sebelumnya di kelas.
sumber