让我说我写这个小的linqpad片段并运行它,我得到我期望的
但是当我再次点击F5时,列表中会有两个项目:
我没想到会这样做,也无法理解为什么会如此。
每次运行它时列表都会增长,除非我对代码执行某些操作,甚至添加注释。然后它将重置为一个条目。
这是设计的吗?如果是这样的话? 我在5.08.01
答案 0 :(得分:6)
这是设计的。除非您执行以下操作之一,否则它不会重置应用程序域:
1)使用Ctrl + Shift + F5按需重置
或
2)进入编辑/首选项/高级并将“始终使用新鲜应用程序域”设置为True。每次运行脚本时都会重置
或
3)将以下代码放入您的查询中(这告诉LINQPad下次运行时使用新域名):
Util.NewProcess = true;
至于为什么,可能有多种好处,但我认为表现是主要的。您可以将昂贵查询的结果放在静态变量中,并且只在第一次运行它。