Tag: C#的

什么时候在Linq中使用Cast()和Oftype()

我知道两种从Linq的Arraylist中将types转换为IEnumerable方法,并想知道在哪些情况下使用它们? 例如 IEnumerable<string> someCollection = arrayList.OfType<string>() 要么 IEnumerable<string> someCollection = arrayList.Cast<string>() 这两种方法有什么区别,我应该在哪里应用每种情况?

什么是MvcHtmlString,我应该什么时候使用它?

MvcHtmlString的文档不是非常有启发性的: 表示不应再次编码的HTML编码的string。 我不清楚这到底是什么意思。 看来有些HTML帮助器方法返回一个MvcHtmlString ,但是我在网上看到的一些自定义帮助器的例子只是返回一个常规的string。 问题: 什么是MvcHtmlString ? 什么时候应该selectMvcHtmlString不是string ,反之亦然? 为什么?

DateTime“空”值

我一直在寻找很多,但找不到解决scheme。 你如何处理应该能够包含一个未初始化的值(等于null)的date时间? 我有一个类可能有一个DateTime属性值设置或不。 我正在考虑将财产持有人初始化为DateTime.MinValue,然后可以很容易地进行检查。 我想这是一个很常见的问题,你怎么做?

从线程获取线程ID

在C#中,当debugging线程时,你可以看到每个线程的ID。 我无法find一种方式来获得相同的线程,以编程方式。 我什至不能得到当前线程的ID(在Thread.currentThread属性中)。 所以,我想知道Visual Studio如何获得线程的ID,并有一种方法来获得与ID 2345线程的句柄,例如?

如何在.NET中打印当前的堆栈跟踪,没有任何exception?

我有一个常规的C#代码。 我没有例外 。 我想以编程方式logging当前堆栈跟踪以进行debugging。 例: public void executeMethod() { logStackTrace(); method(); }

使用Process.Start()从Windows服务中以不同的用户身份启动进程

我想定期从一个Windows服务指定的用户帐户运行一个任意的.NET EXE文件。 到目前为止,我已经得到了我的Windows服务与逻辑运行,以确定目标进程是什么,以及什么时候运行它。 目标进程以下列方式启动: Windows服务使用“pipe理员”凭据启动。 当时间到了,一个中间.NET进程被执行,参数详细说明哪个进程应该被启动(文件名,用户名,域名,密码)。 此进程创build一个新的System.Diagnostics.Process,将一个ProcessStartInfo对象与传递给它的参数进行关联,然后调用该进程对象上的Start()。 第一次发生这种情况时, 目标进程正常执行,然后正常closures 。 然而,随后的每一次,只要目标进程开始,它就会抛出错误“Application failed to initalize properly(0xc0000142)”。 重新启动Windows服务将允许进程再次成功运行(对于第一次执行)。 自然,目标是每次成功执行目标进程。 关于上面的步骤2:以不同的用户身份运行进程.NET调用win32函数CreateProcessWithLogonW。 此function需要一个窗口句柄才能login指定的用户。由于Windows服务未以交互模式运行,因此它没有窗口句柄。 这个中间过程解决了这个问题,因为它有一个窗口句柄可以传递给目标进程。 请不要使用psexec或Windows任务计划程序的build议。 我已经接受了我的生活,包括以上述方式解决问题。

正则expression式从C#中去除行注释

我正在处理一些例程,以从一些C#代码中去除块或行注释。 我已经看了网站上的其他例子,但还没有find我正在寻找的确切答案。 我可以使用这个正则expression式与RegexOptions.Singleline完全匹配块注释(/ * comment * /): (/\*[\w\W]*\*/) 我可以使用这个正则expression式与RegexOptions.Multiline完全匹配行注释(//注释): (//((?!\*/).)*)(?!\*/)[^\r\n] 注意:我使用[^\r\n]而不是$因为$在匹配中也包含\r 。 但是,这并不像我想要的那样工作。 这是我匹配的testing代码: // remove whole line comments bool broken = false; // remove partial line comments if (broken == true) { return "BROKEN"; } /* remove block comments else { return "FIXED"; } // do not remove nested comments */ bool working = […]

何时使用抽象类?

这里是关于抽象类的MSDN文章,但我真的不明白… 我应该什么时候真正使用抽象类? 使用抽象类有什么好处?

使用OpenCV和机器学习简单的对象检测

我必须使用OpenCV编码一个对象检测器(在这种情况下,一个球)。 问题是,谷歌上的每一个search都会返回一个带有FACE DETECTION的东西。 所以我需要帮助从哪里开始,使用什么等。 一些信息: 球没有固定的颜色,它可能是白色的,但可能会改变。 我必须使用机器学习,不必是一个复杂和可靠的,build议是KNN(这是更简单和更容易)。 在我所有的search之后,我发现计算样本的球状图像的直方图并将其教给ML可能是有用的,但是我的主要关注点是球尺寸可以并且将会改变(距离相机越来越近)和我不知道要传递给ML来为我分类,我的意思是..我不能(或者我可以吗?)只是testing每个可能的大小的图像的每个像素(从可以说,5×5到WxH ),并希望find一个积极的结果。 可能会有一个不统一的背景,比如人,球后面的布等等。 正如我所说,我必须使用MLalgorithm,这意味着没有哈尔或Violaalgorithm。 另外,我想使用轮廓在Canny的图像上寻找圆,只需要find一种方法将轮廓转换为一行数据来教KNN。 那么…build议? 提前致谢。 ;)

用于C#/ .NET的固体FFmpeg包装器

我一直在网上search一段时间为C#/。NET一个坚实的FFmpeg包装。 但是我还没有想出一些有用的东西。 我发现了以下三个项目,但是所有这些项目都在早期的alpha阶段就已经死了。 FFmpeg.NET ffmpeg的锐 FFLIB.NET 所以我的问题是,如果有人知道一个更成熟的包装项目? 我不是在寻找一个完整的代码转换引擎和更多的工作。 只是一个简单的包装,所以我不必进行命令行调用,然后parsing控制台输出,但可以进行方法调用,并使用eventlisteners进度。 请随时提及任何活跃的项目,即使它们在初期阶段仍然存在。