草庐IT

hdr-Build_and_test_caching

全部标签

c# - MVC 4 : How to maintain sessions and cookies to be still valid after IIS restart?

似乎我的登录session(使用简单成员资格)和cookie(验证token)在IIS服务器重新启动后无效。这对我来说是个问题,如果用户在交易中间然后服务器重新启动,用户必须重新填写表格并重新填写,当交易在中间中断时也可能是一些代码问题过程。如何让它们在服务器重启后仍然有效?这是我的web.config:.........更新我尝试使用SQLServer来存储session状态。然后出现新问题,我不能使用ViewBag,因为它不是Serializable。还有其他方法可以实现吗? 最佳答案 没有办法实现这个AFAIK。您始终可以使用

C# 代码简化查询 : The Null Container and the Foreach Loop

我经常有这样的代码:if(itm!=null){foreach(typexinitm.subItems()){//dostuff}}//domorestuff在省略//domorestuff的情况下,很容易避免额外的foreach循环。通过使用适当的命令退出作用域(根据发生的情况,这通常意味着return语句或continue语句)。这种类型的东西往往会导致箭头代码。我目前有几种方法来处理这个问题:使用itm=itm==null这样的代码?itm.subItems():空数组允许箭头代码使用goto使用邪恶的范围黑客(将整个事情,所有的if语句包装在一个范围内,然后突破它)。在我看来,

c# - "The binary operator Add is not defined for the types ' System.String ' and ' System.String '."-- 真的吗?

尝试运行以下代码时:Expression>stringExpression=Expression.Lambda>(Expression.Add(stringParam,Expression.Constant("A")),newList(){stringParam});stringAB=stringExpression.Compile()("B");我收到标题中提到的错误:“二元运算符Add没有为类型‘System.String’和‘System.String’定义。”真的是这样吗?显然在C#中它有效。在C#中执行strings="A"+"B"是表达式编译器无法访问的特殊语法糖吗?

c# - 在 Visual Studio Online Build Definition 中从具有多个 Web 项目的解决方案构建一个 Web 项目

我遇到一个问题,我需要从一个在VisualStudioOnline中包含两个Web项目的解决方案构建一个Web项目。我还没有找到如何使用“VisualStudioBuild”步骤仅构建一个项目。如果存在通过“VisualStudio构建”步骤执行此操作的方法,那就太好了。我还尝试使用“MSBuild”步骤。不幸的是,我在使用Nuget恢复包时遇到了问题。我收到错误:##[error]未找到文件格式header,##[error]从工具NuGet.exe返回意外退出代码1。运行后立即:Nuget.exe恢复Myproj.csproj。总结:如何在VisualStudio在线构建定义中从具

c# - 乐观并发 : IsConcurrencyToken and RowVersion

我正在创建将在我的应用程序中使用的默认并发策略。我决定采用乐观策略。我的所有实体都映射为TableperType(TPT)(使用继承)。我很快了解到,在EntityFramework上使用带有继承的RowVersion类型的列时会出现问题:ProductIdINTIDENTITYPRIMARYKEYRowVersionROWVERSIONCar(inheritsProductrecords)ColorTYNIINTNOTNULL,AnotherProperty....   如果我更新Car表的记录,Product表中的RowVersion列将不会更新。我计划在Product中使用类型为

c# - TDD : Any pattern for constant testing?

常量是美丽的人——它们可以在一个独特的地方保存一个在代码中随处使用的值。更改该值只需要一个简单的修改。生活很酷。嗯,这是promise。现实有时是不同的:您将LogCompleteFileName常量值从L:\LOGS\MyApp.log更改为\\Traces\App208.txt并且您得到两个文件:用于跟踪的\\traces\App208.txt和用于日志的\\traces\App208.txt.log...您将TransactionTimeout从2分钟更改为4分钟,但在2分钟后您仍然会超时(在花费了一天之后,您发现您还必须更改DBMS的超时和超时交易经理...)。您将SleepT

C# : Implicit conversion between '<null>' and 'bool'

当我尝试转换object时收到奇怪的错误消息至bool,这是我的代码:publicpartialclassModifierAuteur:DevExpress.XtraEditors.XtraForm{publicModifierAuteur(objectgetKeyDecesCheckBox){decesCheckBox.Checked=getKeyDecesCheckBox==null?null:(bool)getKeyDecesCheckBox;}}这是错误信息:Typeofconditionalexpressioncannotbedeterminedbecausethereisn

c# - 查看缓存在System.Web.HttpRuntime.Cache中的数据

是否有任何工具可用于查看HttpRunTime缓存中的缓存数据..?我们有一个Asp.Net应用程序,它正在将数据缓存到HttpRuntime缓存中。给定的默认值是60秒,但后来更改为5分钟。但是感觉缓存的数据在5分钟之前就刷新了。不知道下面发生了什么。是否有任何可用的工具或我们如何查看缓存在HttpRunTime缓存中的数据……以及过期时间……?以下代码用于将项目添加到缓存。publicstaticvoidAdd(stringpName,objectpValue){intcacheExpiry=int.TryParse(System.Configuration.Configurati

c# - ASP.NET 5(核心): How to store objects in session-cache (ISession)?

我正在编写一个ASP.NET5MVC6(Core)应用程序。现在我需要在session缓存(ISession)中存储(设置和获取)一个对象。您可能知道,ISession的Set方法接受一个byte-array和Get-方法返回一个。在非核心应用程序中,我会使用BinaryFormatter来转换我的对象。但是我怎样才能在核心应用程序中做到这一点呢? 最佳答案 我会将对象序列化为JSON,并使用ISession上的扩展方法将它们保存为string。//Savevarkey="my-key";varstr=JsonConvert.Ser

c# - 递归 LINQ 查询 : select item and all children with subchildren

有没有什么方法可以编写一个LINQ(或过程式)查询,它可以通过一个查询选择一个项目和所有子项?我有实体:publicclassComment{publicintId{get;set;}publicintParentId{get;set;}publicintText{get;set;}}我有一个ID,所以我想选择带有ID的Comment及其所有子项和子项。示例:1-2--3-4-5--623如果ID==1那么我想要1,2,3,4,5,6的列表。 最佳答案 publicclassComment{publicintId{get;set;}