相关疑难解决方法(0)

在System.Type上使用条件断点时出错

这是功能:

public void Init(System.Type Type) {
    this.Type = Type;
    BuildFieldAttributes();
    BuildDataColumns(FieldAttributes);
}
Run Code Online (Sandbox Code Playgroud)

我在第一行(this.Type = Type)上设置了一个断点,我想打破这个时间Type.FullName == "Malt.Organisation",这就是我输入的条件.

但是,当命中该行时会显示以下错误:

断点的条件无法执行.条件是'Type.FullName =="Malt.Organisation"'.返回的错误是'在此上下文中不支持在System.Type类型的调试对象中检查对象的状态.'

我做错了什么(显而易见的)?

PS.解决方法是将其添加到代码中:

if (Type.FullName == "Malt.Organisation") System.Diagnostics.Debugger.Break();
Run Code Online (Sandbox Code Playgroud)

c# conditional-breakpoint

36
推荐指数
1
解决办法
1万
查看次数

如何在VS 2013中的立即窗口中执行LINQ和/或foreach?

在调试过程中探测当前状态时,立即窗口是非常有用的工具.我了解到,通过使用问号,一个可以做在那里多一点,如图在这个岗位.

但是,我仍然不知道如何在那里执行LINQ查询(包括 lambda表达式).我也没有执行foreach声明.

执行以下语句时:

?(things.Select(thing=>thing.Id);)
?(foreach(var thing in things);)
Run Code Online (Sandbox Code Playgroud)

我收到这些错误:

表达式不能包含lambda表达式
无效的表达式术语'foreach'

(如何)我可以在立即窗口中执行这些操作吗?

VS Gallery中也有一个工具,但据说它只适用于VS05和VS08,大多数程序员在很久以前就已经抛弃了它们.我正在寻找适用于VS13和/或VS15的东西.

c# linq lambda immediate-window visual-studio

19
推荐指数
2
解决办法
2万
查看次数