Aspnetcore: HttpContext.Session.SetString

تم إنشاؤها على ١٧ يونيو ٢٠١٦  ·  3تعليقات  ·  مصدر: dotnet/aspnetcore

AspNet core RC2
الحزمة: Microsoft.AspNetCore.Session

 خطأ HttpContext.Session.SetString (مفتاح ، قيمة).

لقد قمت بإضافة رمز في startUp.cs.

 خدمات تكوين باطلة عامة (خدمات IServiceCollection)
 {
 // إضافة خدمات الإطار
 services.AddApplicationInsightsTelemetry (التكوين) ؛
 services.AddAuthorization () ؛
 services.AddSession (خيارات =>
 {
 options.IdleTimeout = TimeSpan.FromDays (7) ،
 options.CookieName = ".FileSystem" ؛
 }) ؛
 services.AddMvc () ،
 }
 تكوين الفراغ العام (تطبيق IApplicationBuilder ، IHostingEnvironment env ، ILoggerFactory loggerFactory)
 {
 #منطقة

 loggerFactory.AddConsole (Configuration.GetSection ("Logging")) ؛
 loggerFactory.AddDebug () ،

 app.UseApplicationInsightsRequestTelemetry () ؛

 إذا (env.IsDevelopment ())
 {
 app.UseDeveloperExceptionPage () ،
 app.UseBrowserLink () ،
 }
 آخر
 {
 app.UseExceptionHandler ("/ الصفحة الرئيسية / خطأ") ؛
 }

 app.UseApplicationInsightsExceptionTelemetry () ؛

 app.UseStaticFiles () ،

 app.UseMvc (المسارات =>
 {
 المسارات .MapRoute (
 الاسم: "افتراضي" ،
 template: "{controller = Home} / {action = Index} / {id؟}")؛
 }) ؛

 # منطقة

 app.UseSession () ؛
 }
 }

** لا يعمل. HttpContext.session.setString ()

خطأ: لم يتم تكوين الجلسة لهذا التطبيق أو الطلب.

لقد قرأت بعض المدونات: asp.net core rc1.
تظهر المدونات أنه يجب عليّ استيراد الحزمة: aspnet.session.
ولكن عندما أقوم باستيراد هذه الحزمة ، لا يمكن للحزمة دعم وظيفة app.UseSession ().

مساعدة! كيف يمكنني استخدام الجلسة في aspNet core RC2

التعليق الأكثر فائدة

تتم إضافة البرامج الوسيطة إلى خط الأنابيب بالترتيب الذي تظهر به في التعليمات البرمجية الخاصة بك. في هذه الحالة ، يظهر UseSession بعد UseMvc ؛ وبالتالي لا يتم إعداده إلا بعد تنفيذ Mvc. قم بإضافته في وقت ما قبل مكالمتك إلى UseMvc . https://docs.asp.net/en/latest/fundamentals/middleware.html#creating -a-middleware-pipeline-with-iapplicationbuilder لديه معلومات مفيدة جدًا حول كيفية عمل ذلك.

ال 3 كومينتر

تتم إضافة البرامج الوسيطة إلى خط الأنابيب بالترتيب الذي تظهر به في التعليمات البرمجية الخاصة بك. في هذه الحالة ، يظهر UseSession بعد UseMvc ؛ وبالتالي لا يتم إعداده إلا بعد تنفيذ Mvc. قم بإضافته في وقت ما قبل مكالمتك إلى UseMvc . https://docs.asp.net/en/latest/fundamentals/middleware.html#creating -a-middleware-pipeline-with-iapplicationbuilder لديه معلومات مفيدة جدًا حول كيفية عمل ذلك.

pranavkm شكرا جزيلا.

عديم الفائدة

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات