相关疑难解决方法(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万
查看次数

VS2015的即时窗口中的lambda表达式

我正在运行Visual Studio 2015,人们声称在即时窗口,手表和其他地方支持lambda表达式.但那对我不起作用.我使用以下代码创建了一个新的控制台应用程序:

static void Main(string[] args)
{
    var list = new List<int> {1, 2, 3, 4, 5, 6, 7};
}
Run Code Online (Sandbox Code Playgroud)

然后在即时窗口尝试一些简单的lambdas并观察,如下所示: 在此输入图像描述

正如你所看到的,它给了我"表达式不能包含lambda表达式".我查看了工具 - >选项 - >调试设置但找不到与该问题相关的任何内容.我运行的版本是VS2015 Enterprise,14.0.24720.00 Update 1可能导致此问题的原因是什么?

c# linq lambda immediate-window visual-studio-2015

34
推荐指数
1
解决办法
7462
查看次数

在C#interactive中获取调试器上下文

C#Interactive似乎比立即窗口更强大(至少它处理LINQ中经常使用的lambda表达式 - 请参阅Visual Studio调试"快速监视"工具和lambda表达式),但看起来它不能用作一个替代品,因为它不知道调试器上下文.有没有办法访问调试器上下文?

我已经看到在F#中获取调试器上下文,它可能需要相同的东西,但也许有新的/不同的东西可用.

http://extendedimmediatewin.codeplex.com/可能很有用,但看起来已经死了,虽然有人在2011年10月18日说他打算将它移植到VB.Net(http://extendedimmediatewin.codeplex.com/discussions/75589).

c# debugging visual-studio roslyn

33
推荐指数
2
解决办法
6961
查看次数

9
推荐指数
1
解决办法
6862
查看次数

为什么"lambda表达式的评估在调试器中无效"?

我有一个看似无辜的代码片段,我在Visual Studio 2008 立即窗口中输入.

? results.Join(lstDocs, Function(docID) docID)
Evaluation of lambda expressions is not valid in the debugger.
Run Code Online (Sandbox Code Playgroud)

正如消息所说,在调试器中调用lambda表达式是不可能的.
为什么不允许?

.net debugging lambda visual-studio-2008 visual-studio

8
推荐指数
1
解决办法
2972
查看次数

计算List <Array>的每个数组中的元素

如何计算0列表中每个数组中等于的元素?

我有一份清单List<byte[]> piks.我想计算每个有byte[]多少元素相等0.

我尝试了几种方法:

from c in piksle_lista_tablic[84] 
where (c.Equals(0)) 
select c
Run Code Online (Sandbox Code Playgroud)

要么

piksle_lista_tablic[84].Count(n => n == 0)
Run Code Online (Sandbox Code Playgroud)

我总是得到错误Expression cannot contain lambda expressions.

例如: piks[1]是一个包含1156项目的数组,我想知道该数组中有多少特定元素.


PS:我可以在观察窗口使用Linq吗?

c# linq list

2
推荐指数
1
解决办法
2068
查看次数

为什么不能在Visual Studio 2013中的条件断点中使用lambda?

说我有以下方法:

public List<List<int>> DoSomething () {
    List<List<int>> result;

    //Do some things

    return result; //Would like to breakpoint here
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用条件断点,例如:

result.Any(i => i.Any(j => j < 0))
Run Code Online (Sandbox Code Playgroud)

我收到一条错误,说你不能在条件断点中使用lambda表达式.这是为什么?

c# debugging lambda conditional-breakpoint visual-studio

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