草庐IT

func_inc_var_session

全部标签

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# - 将 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# - 比 var 更好的推断变量的词

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。这可能会被关闭,但我还是会尝试。前几天我向一位VB6程序员展示了我的一些C#代码,他注意到了var关键字并且说“哦,一个变体类型,当你这样做时,它并不是真正的强类型。”我不得不继续典型的“var!=VARIANT”演讲来向他解释这不是它只是编译器推断的变体。我在考虑他们(C#团队)可以使用的其他词,这样这种事情就不会发生。我个人喜欢infer,比如:in

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

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

c# - Func<> 与委托(delegate)和 lambda 表达式之间的区别

这个问题在这里已经有了答案:delegatekeywordvs.lambdanotation(6个答案)关闭9年前。在深入了解C#的更多高级功能时,我遇到了一些代码,但我并不清楚它们之间的区别。这是关于这两行:FuncgiveLength=(text=>text.Length);和FuncgiveLength=delegate(stringtext){returntext.Length;};这可以用同样的方式使用:Console.WriteLine(giveLength("Arandomstring."));所以基本上..这两行有什么区别?这些行是否编译为相同的CIL?

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

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

c# - 如何在 LINQ 中为 var 编制索引?

我正在尝试让以下代码在LINQPad中工作,但无法索引到var。有人知道如何在LINQ中索引到var吗?string[]sa={"one","two","three"};sa[1].Dump();varva=sa.Select((a,i)=>new{Line=a,Index=i});va[1].Dump();//Cannotapplyindexingwith[]toanexpressionoftype'System.Collections.Generic.IEnumerable' 最佳答案 正如评论所说,您不能使用[]应用索引到Sy

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

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

c# - 无法检测 Session 变量是否存在

我正在尝试确定是否存在Session变量,但出现错误:System.NullReferenceException:Objectreferencenotsettoaninstanceofanobject.代码://Checkifthe"company_path"existsintheSessioncontextif(System.Web.HttpContext.Current.Session["company_path"].ToString()!=null){//Sessionexists,setitcompany_path=System.Web.HttpContext.Current.

c# - Func<T, TResult> 和 Converter<TInput, TOutput> 有什么区别?

查看Func和Converter委托(delegate)的签名,publicdelegateTResultFunc(Targ);publicdelegateTOutputConverter(TInputinput);我很难看出两者之间的区别。当然,如果我们重命名泛型类型参数,它们本质上是一样的吗?有人能解释一下为什么它们都存在吗? 最佳答案 没有区别。它们存在的原因是历史性的。Converter在.NET2.0中已经可用,但整个范围Func稍后添加了委托(delegate)类型。为了保持一致性,Func已添加,但它与Converte