问题:我想在控制台应用程序中为未处理的异常定义一个全局异常处理程序.在asp.net中,可以在global.asax中定义一个,在windows应用程序/服务中,可以定义如下
AppDomain currentDomain = AppDomain.CurrentDomain;
currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyExceptionHandler);
Run Code Online (Sandbox Code Playgroud)
但是,如何为控制台应用程序定义全局异常处理程序?
currentDomain似乎不起作用(.NET 2.0)?
编辑:
唉,愚蠢的错误.
在VB.NET中,需要在currentDomain前添加"AddHandler"关键字,否则在IntelliSense中看不到UnhandledException事件......
这是因为VB.NET和C#编译器对事件处理的处理方式不同.
让我们假设我的团队中的一些开发人员搁置了他在分支A中所做的更改.我正在分支B工作.我可以将他的更改取消分支B吗?(通过GUI或命令提示符)
选项的名称可以说明Visual Studio /编译器的真正含义以及真正的后果是什么?
编辑:如果你搜索谷歌,你可以找到这个地址,但这不是我真正想要的.我想知道真实的事情发生了.例如,为什么循环得到的时间更少等等.
项目编写单元测试的哪些部分几乎或几乎不可能?数据访问?FTP?
如果对这个问题有答案,那么%100的报道就是一个神话,不是吗?
您更喜欢这些或其他方法中的哪一种(如果有的话)?为什么?
假设我们通过使用预期结果对象的属性断言结果对象的所有属性的相等性来测试方法的结果.我们应该实现equals方法并使用Assert.AreEqual(expectedResult,actualResult)......但是equals可能意味着生产代码中存在不同的东西.
哪种是最佳做法?
要么
在.NET中,您应该将单元测试项目与其余解决方案放在一起吗?或者是否应该有一个包含所有测试项目的测试解决方案?
我们的代码库解决方案中包含所有测试项目......看起来有点麻烦.
你平常都做什么?
是否有人使用Subsonic与asp.net mvc框架?如果是这样,你能告诉我们你的经历吗?是否有可以共享的提示和技巧?
我有一个名为call的数据库表,其中包含call_time,location,emergency_type列,还有三种类型的紧急情况:护理人员,警察和消防员.在Windows窗体中,我创建了CheckBoxes的"医护人员","警察","消防员",我想检索满足用户选择的所有表格列.
我创建了一个函数:
public static DataTable GetHistory(DateTime from, DateTime to, bool paramedics, bool police, bool firefighters)
{
string select =
"SELECT call_time, location, emergency_type where call_time between @from AND @to AND";
if(paramedics)
{
select += " emergency_type = 'paramedics' ";
}
if(paramedics && police)
{
select +=" emergency_type = 'paramedics' OR emergency_type = 'police';
}
...
}
Run Code Online (Sandbox Code Playgroud)
然而这个代码看起来很脏,因为如果有30种紧急情况就会有30个!组合,我会在写所有if语句之前变老.
如果您有很多选项可以选择,如果您分享了检索符合所选搜索条件的数据的练习,我将不胜感激.
谢谢!
.net ×4
unit-testing ×3
c# ×2
asp.net-mvc ×1
assert ×1
assertions ×1
branch ×1
datatable ×1
equals ×1
optimization ×1
shelve ×1
solution ×1
sql ×1
subsonic ×1
tdd ×1
tfs ×1
tfs2008 ×1
unshelve ×1
vb.net ×1