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

在C#interactive中获取调试器上下文,c#,visual-studio,debugging,roslyn,C#,Visual Studio,Debugging,Roslyn,C#Interactive似乎比即时窗口功能强大得多(至少它可以处理LINQ-see中经常使用的lambda表达式),但它似乎不能替代它,因为它不知道调试器上下文。有没有办法访问调试器上下文 我见过,可能需要相同的东西,但可能有新的/不同的东西可用 可能很有用,但看起来相当死气沉沉,尽管2011年10月18日有人说他计划将其移植到VB.Net()。免责声明:我在Roslyn团队中为微软工作 不幸的是,我们现在没有办法获取调试器上下文。我们知道这会很有用,随着我们完成更多Roslyn的核心交付物,

C#Interactive似乎比即时窗口功能强大得多(至少它可以处理LINQ-see中经常使用的lambda表达式),但它似乎不能替代它,因为它不知道调试器上下文。有没有办法访问调试器上下文

我见过,可能需要相同的东西,但可能有新的/不同的东西可用


可能很有用,但看起来相当死气沉沉,尽管2011年10月18日有人说他计划将其移植到VB.Net()。

免责声明:我在Roslyn团队中为微软工作


不幸的是,我们现在没有办法获取调试器上下文。我们知道这会很有用,随着我们完成更多Roslyn的核心交付物,我们希望进行更多的调查,看看能做些什么。

不是一个完整的解决方案,但在VS2015中,在您运行Initialize Interactive with Project之后,您可以使用Debug>Attach to Process连接到
InteractiveHost.exe
进程

然后可以调试项目中的函数。但是,正如Kevin所解释的,您将无法在交互窗口中调试一次性函数


作为旁注,指出在打开解决方案之前,您可能必须打开一个C#Interactive窗口,以便成功地初始化与Project的Interactive

很高兴知道有一天会发生这种情况。谢谢你的内部评论。几年后,这个问题解决了吗?Web,Rails,所有的东西都有交互控制台。我感到惊讶的是,并不是所有平台都采用这种语言。如果团队对编程的最新使用/功能更感兴趣,C#在现代可能会像Python和许多其他语言一样成为一种更强大的编程语言。多年以后,为了调试一段简单的代码,我仍然需要创建一个完整的控制台项目。这就是为什么人工智能、机器学习和数据挖掘领域的人们不选择C#作为主要语言的原因之一。是的,下一个问题是python!这是Roslyn IMO最重要的应用程序。刚刚在VS2017中实现了这一点,非常令人惊讶。荣誉2019年也有工作。顺便说一句,如果你在VS切换到调试模式后“丢失”了交互窗口-只需转到查看-其他窗口-C#interactive