DCSIMG
Request is not available in this context - Application_Start - שלמה גולדברג (הרב דוטנט)

שלמה גולדברג (הרב דוטנט)

מרצה בסלע ויועץ בעולם ה - net.

Request is not available in this context - Application_Start

 

למה פתאום התחלנו לקבל את השגיאה Request is not available in this context אם ניגשים אליו מתוך ה - Application_Start.

 
 
במידה ואתם ניגשים ל - HttpContext.Current.Request בתוך ה - Applicatipon_Start בגרסאות IIS7.X האפליקצייה תתחיל להתרסק (מה שלא יקרה כמובן בזמן פיתוח היות שעובדים על השרת הפנימי של visual studio)
 
 
קצת חיפושים בגוגל - והגעתי לכאן, מסתבר שבגרסאות קודמות של IIS היה מוד אחד בלבד של עבודה שנקרא classic ובו אפשר לגשת לאובייקט request גם ב - application_start לעומת זאת בגרסאות החדשות של IIS יש מוד חדש שנקרא Integrated ולא ניתן לבצע זאת.
 
ההחלטה מה המוד של האפליקציה מוגדרת ב - application pool - כלומר לכל application pool מוגדר באיזה מוד הוא עובד
 
application pool
 
 
לעצם הבעייה - לא מומלץ לעבוד עם classic מכיון שזה יאט את הביצועים ועדיף פשוט לא להשתמש עם אובייקט ה - request בזמן עליית האפליקציה.
 
במידה ואתם צריכים לדעת את הנתיב של האפליקציה תוכלו להשתמש ב - HttpRuntime.AppDomainAppVirtualPath.
 
 
 
לרשימת ההבדלים בין המודים (חשוב מאוד לקרוא)
פורסם: Aug 26 2010, 11:52 AM by Shlomo | with no comments
תגים:, , , ,
שלח תגובה

(שדה חובה)  

(שדה חובה)  

(אופציונלי)

(שדה חובה) 

Please add 3 and 1 and type the answer here:


Enter the numbers above: