Server.MapPath داخل معالج Application_End في Global.asax
-
12-12-2019 - |
سؤال
أريد حفظ ملف عند انتهاء طلبي.
للقيام بذلك، أحتاج إلى الحصول على المجلد الجذر للتطبيق.
الطريقة الوحيدة التي أعرفها للقيام بذلك هي الاستخدام Server.MapPath("~")
, ، ولكن هذا لا يعمل، حتى من خلال HttpContext.Current.Server
لأنه لا يوجد السياق الحالي، بقدر ما أفهم.
هل هناك طريقة ذكية وبسيطة للحصول على مسار المجلد هذا؟هل سأواجه مشكلات في الأذونات عند محاولة إنشاء ملف في المجلد الجذر؟
أي أفكار بديلة حول كيفية تحقيق ذلك؟
المحلول
يجب عليك استخدام HttpRuntime.AppDomainAppPath
, ، والتي سوف تعمل دائما.
نصائح أخرى
- طلب.MapPath("")
- Request.PhysicalApplicationPath
- HttpRuntime.AppDomainAppPath
يحرر
ينبغي أن يكون HttpRuntime.AppDomainAppPath
فقط لأن الخيارين الآخرين سيكونان فارغين في معالج Application_End.
لا تنتمي إلى StackOverflow