草庐IT

session_namespace

全部标签

c# - 重定向到 Session_end 事件的另一个页面

我想在session超时时自动重定向到登录页面。在web.config文件中,我有以下代码在Global.asax文件中-protectedvoidSession_End(objectsender,EventArgse){Response.Redirect("LoginPage.aspx");}但超时后,我收到以下错误:HttpExceptionwasunhandledbyusercode.Responseisnotavailableinthiscontext.有解决这个问题的线索吗? 最佳答案 session结束时调用Sessio

c# - EF6 : Renaming namespace using Code First Migrations

我可以重命名我整个项目的命名空间(当然包括:DbContext类、迁移配置类等)而不破坏任何东西或不必重新创建我的所有迁移?比如说,我有ProjectMyProject,命名空间是Foo.MyProject我的配置类在Foo.MyProject.Migrations假设我想为Bar重命名Foo命名空间,当然我的Configurations命名空间现在将是Bar.MyProject.Configurations是否有任何正确的方法可以做到这一点并保持我当前的所有迁移仍然有效?这些方法是否涉及手动编辑___MigrationHistory表或其他内容?(我一眼就看到了ContextKey列

c# - HttpContext.Current.Session 与 Context.Session

它们是一回事吗?或者它们有什么不同?我读过这个SOpost和this但他们比较的是HttpContext.Current.Session和Session而不是Context.Session。我错过了什么/误解了什么? 最佳答案 Context.Session在与HttpContext.Current.Session相同的页面中。HttpContext.Current.Session通常从不直接在页面上或没有对当前页面的引用的代码中使用。 关于c#-HttpContext.Current.

c# - SyndicationFeed 将 namespace 前缀从 a10 更改为 atom

我正在使用System.ServiceModel.Syndication.SyndicationFeed创建一个rss提要,我从中得到这个:...除了我validatemyfeed.验证器提示a10命名空间前缀并建议我改用atom。这听起来很合理..除了我看不到更改前缀的直接方法。关于更改前缀的方法有什么想法吗? 最佳答案 要为原子扩展指定自定义名称,您需要在提要格式化程序上禁用SerializeExtensionsAsAtom:varformatter=feed.GetRss20Formatter();formatter.Seri

c# - 将 boolean 值转换为 session 变量

关于如何将代码中的“可食用”转换为session以在不同页面上显示为标签的任何想法?标签会显示类似“yescaneat”的信息publicinttotalCalories(){returngrams*calsPerGram;}publicstringgetFruitInfo(){strings;if(edible==true){s=fName+"isgoodandithas"+totalCalories()+"calories";}else{s="Handsoff!Notedible";//edible=Sesion["ediblesesion"]asbool;//Session["e

c# - Web.config 的 system.web/Pages/Namespaces 标签有什么意义?

无论我机器的根Web配置(Windows/Microsoft.NET/...中的那个)是否包含system.web/pages/namespaces/add元素,但仍然要求我在每个aspx.csCodeBehind文件的顶部包含using语句。为什么?它不应该编译并且不提示它无法理解页面是什么吗?毕竟,存在于根web.config中! 最佳答案 system.web/pages/namespaces/add元素用于.ASPX文件,普通.CS文件(包括.ASPX.CS)仍然需要做正确的using因为在编译之前没有对源代码进行预处理。所

c# - 在配置中未设置时获取 session 超时值?

我正在实现我的自己的session提供程序,想知道session提供程序中是否自动设置了默认的20分钟?无论条目是否在配置文件中,都会提供此值吗?如果不是,我的session提供者应该从另一个位置获取它吗? 最佳答案 我无法在全局配置文件中找到该值,但它已在某处定义。使用以下代码,您可以获得session超时值,无论它是否在您的本地web.config中定义。Configurationconf=WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.Hostin

c# - 每个应用程序 session 的 Nlog 固定文件名

我正在使用Nlog从我的C#应用程序中登录。以下是我的Nlog.config部分:对于filename我正在使用${date:format=yyyyMMdd_HHmmss}_trg.log根据创建时间命名日志。但是,当我的应用程序运行时,记录器每秒创建一个新的日志文件。如何强制Nlog修复文件名并在每个session中只创建一个日志? 最佳答案 我不确定,但我的猜测是NLog根据文件名属性(这是动态的,因为您使用的是日期布局渲染器)检查日志文件是否存在。因此,由于文件名在变化(即每次检索到的文件名值都不同(或可能不同)),NLog会

c# - "The type or namespace name ' 引用System.Xml.dll时XmlSerializer ' could not be found"错误

我已经在这上面浪费了几个小时:XmlSerializerserializer;是的,using在那里,引用在那里,我在VS2010中使用.NET4.0制作了整个解决方案,所以它不是那些东西。如果我进入对象资源管理器,我可以在正确的命名空间中找到我想要的XmlSerializer类,但是如果我尝试在我的代码文件中键入上面的行并进行编译,我会得到可怕的Thetypeornamespacename'XmlSerializer'couldnotbefound(areyoumissingausingdirectiveoranassemblyreference?)死亡警告。我也没有在Intelli

c# - 根据自定义条件防止个别 session 过期?

我正在做的一个网站非常以数据为中心。有些报告需要一个多小时才能完成。每当用户提交报告请求时,都会创建一个新线程来生成报告。然后用户被重定向到一个页面,上面写着报告正在进行中,请刷新以下载报告。如果用户再次刷新页面并且报告仍在进行中,则显示相同的消息;否则提供下载链接。所有报告/用户关系都保存在应用程序变量中。这工作正常,除非用户不活动超过20分钟(在处理报告时),然后用户注销;如果用户再次登录,报告仍然可以下载。我不想增加session过期时间,但如果用户在后台进行某些操作(例如正在处理报告),我需要停止过期。在Session_End中,我能够检索userid并在Application