22得票2回答
如何将 Visual Studio Code 代码片段变量转换为小写?

我已经建立了一些片段来生成设置类的字段。我现在使用两个变量 - $setting$ 和 $Setting$ - 来生成属性和支持字段的名称。我希望使用一个变量,因为唯一的区别是后面的字段始终是小写版本。 当前代码:string $setting$; /// <summary> ...

7得票5回答
如何加载一个较旧版本的.NET程序集?

我有一个引用了.NET 4.0程序集的WPF/C#应用程序。然而,在应用程序中有一个文本编辑器,需要显示与.NET 3.5程序集相关联的C#智能感知。因此,我希望能够在运行时加载适当的.NET 3.5程序集。但是,当我尝试使用以下代码时: Assembly.Load() Assembly.L...

61得票5回答
寻找一种实用的方法来对.NET插件进行沙箱处理。

我正在寻找一种简单而安全的方法,以从.NET应用程序访问插件。尽管我想象这是一个非常常见的要求,但我仍然在努力寻找满足所有需求的解决方案: 主机应用程序将在运行时发现并加载其插件程序集 插件将由未知的第三方创建,因此必须进行沙箱处理,以防止它们执行恶意代码 共同的Interop程序集将包含...

7得票3回答
转换数字类型:使用哪种风格?

假设我想将Double类型的x转换为Decimal类型的y。有很多种方法可以实现: 1. var y = Convert.ToDecimal(x); // Dim y = Convert.ToDecimal(x) 2. var y = new Decimal(x); ...

82得票4回答
检索字典值的最佳实践

我最近才注意到Dictionary.TryGetValue(TKey key, out TValue value),我很好奇从Dictionary中检索值的哪种方式更好。 我一般会这样做:if (myDict.Contains(someKey)) someVal = myDict[...

12得票3回答
.NET中对调用堆栈的编程访问

如何以程序化的方式访问调用堆栈?

10得票1回答
处理X509Chain

在针对.NET Framework 4.5.1的Visual Studio 2013中,我发现处理X509Chain的释放比预期更加困难。根据MSDN文档,在4.5开始,X509Chain是可释放的。参考源也证实了这一点,并且通过ildasm查看类也证实了这一点: 然而,当尝试像这样将其...

8得票3回答
NLog通过LINQPad - 配置文件放在哪里?

我正在尝试在LINQPad下测试NLog。 我已经成功地连接了它,我的代码编译得很好。然而,NLog没有写日志文件,因为它没有配置。 我尝试制作各种配置文件,如:NLog.config和LINQPad.config,但似乎我没有做正确。 我在LINQPad下的测试代码是: void M...

16得票2回答
当编译 Expression<T> 时,是否会隐式地进行缓存?

当编译一个 Expression&lt;T&gt; 时,框架是否会隐式缓存生成的代码?我想到了静态 Regex 方法,其中框架会隐式编译和缓存最近的几个正则表达式。 如果编译的 Expression&lt;T&gt; 对象不会被缓存,您能推荐一些最佳实践来降低编译时间或任何可能导致问题的注意...

8得票1回答
屏幕区域识别以查找屏幕上的字段位置

我正在尝试找到一种方法,在C#中使用Sikuli的图像识别。我不想使用Sikuli本身,因为它的脚本语言有点慢,而且我真的不想在我的.NET C#应用程序中介绍Java桥接。 所以,我有一个位图,它代表了我的屏幕的一个区域(我将称之为BUTTON1)。屏幕布局可能已经稍微改变了,或者屏幕可能...