Tag: visual studio

为整个项目全局声明预处理器符号(如DEBUG)

我想在NUnit和VS Tests之间切换,如下所示: #if !NUNIT using Microsoft.VisualStudio.TestTools.UnitTesting; #else using NUnit.Framework; using TestClass = NUnit.Framework.TestFixtureAttribute; using TestMethod = NUnit.Framework.TestAttribute; using TestInitialize = NUnit.Framework.SetUpAttribute; using TestCleanup = NUnit.Framework.TearDownAttribute; using TestContext = System.String; using DeploymentItem = NUnit.Framework.DescriptionAttribute; #endif 我的问题是,如何在一个地方声明NUNIT预处理器符号(App.config左右,会很棒),轻松地在NUnit和VSTests之间切换? 因为当我使用#define NUNIT ,它只适用于写入文件的文件。

捕获完全意外的错误

我有一个ErrorRecorder应用程序,它打印出错误报告,并询问用户是否要将该报告发送给我。 然后,我有主应用程序。 如果发生错误,它会将错误报告写入文件,并要求ErrorRecorder打开该文件以向用户显示错误报告。 所以我使用Try / Catch捕获了大部分错误。 但是,如果发生完全意外的错误并关闭我的程序,该怎么办? 有没有像全局/覆盖方法或类似的东西,它告诉程序“在关闭之前,如果发生意外错误,请调用”ErrorRecorderView()“方法”

MVVM是否会阻止Visual Studio Designer显示xaml?

我在我的程序中注意到,当我有很多复杂的绑定时,visual studio没有正确显示xaml。 MVVM及其众多绑定会导致这种情况吗? 在visual studio designer中显示xaml以完全删除绑定是最安全的方法吗?

从Visual Studio文本选择中获取Roslyn SyntaxToken(插入位置)

我试图在Visual Studio扩展包中的VSSDK和Roslyn SDK之间架起桥梁,并且一直很难用。 Visual Studio提供的ActivePoint.AbsoluteCharOffset与使用FindToken(offset)时从Roslyn获取的元素不匹配。 我很确定这与我的当前工作黑客的每一方如何计算EOL字符有关,但我不是100%,我的黑客将长期坚持。 我的黑客是这一行: charOffset += point.Line; 我在char偏移量上添加了行数,这似乎有效,所以我猜我正在添加所有被activepoint计数忽略的换行符。 助手 private VisualStudioWorkspace workspace = null; public RoslynUtilities(VisualStudioWorkspace workspace) { this.workspace = workspace; } public Solution Solution { get { return workspace.CurrentSolution; } } public Document GetDocumentFromPath(string fullPath) { foreach (Project proj in this.Solution.Projects) { foreach (Document doc in proj.Documents) { if (doc.FilePath == […]

.NET调用将击键发送到当前进程,这是一个控制台应用程序?

有没有办法将[enter]键击到当前进程中,强制在Console.ReadLine()上阻塞线程? 更多信息(你可以忽略这个) 我有一个C#控制台应用程序正在运行另一个在Console.ReadLine()上阻塞的线程。 由于Console.ReadLine调用在Windows中非托管代码的内部深处运行的本机Windows线程,因此在解除阻塞之前它不会中止,并且直到它在键盘上接收到按键才会发生。 因此,当我在这个线程上调用“.Abort”时,在C#.NET中,直到我在控制台上手动按[enter]才会这样做。 我想自动化这个按键。

如何以正确的方式使用委托/了解委托

使用 – C#(。Net Framework 4.5,Visual Studio 2012) 我试着理解像代表这样的主题,目前我有几点,必须为我澄清。 我在互联网上发现了很多不同的信息来描述如何使用它,但是对我来说理解这个主题有点复杂。 据我所知,我必须做一些使用委托的事情: 创建一些实体用于它(需要创建一些委托) 声明委托类型 创建一些我调用委托的方法 在主类调用委托与使用实体的必需方法(从第一点) 所有描述如下所示 问题 – 我是否正确理解了所有或者我错了 – 请澄清一下。 另外一个关于DELEGATE的问题 – 在哪里更好地将代码与DELEGATE放在一起 – 在Console C#应用程序中我可以在任何使用过的命名空间的地方创建它 – 我可以在下面看到。 但也许有一些建议/要求不仅为控制台应用程序而且为WinForms,WPF等放置委托。 这个主题对我来说是新的,我花了一天时间来理解它,但仍然有点(或更多)与此混淆,最后创建这篇文章以获得更好和清晰的理解。 认为这是非常强大的东西。 编辑 namespace SimpleCSharpApp { delegate void myDelagate (); }

如何在C#visual studio中定义预处理器符号

对不起,如果我的术语有误。 我在我的代码中写了#if TEST_APP 。 现在我想定义TEST_APP。 我如何使用visual studio 2010进行设置? 这是一个Windows窗体应用程序。 如果您可以告诉我在winform项目和Web项目中设置的符号的名称,可以获得奖励

Visual Studio Debugger可以显示未引用/未转义的字符串吗?

Visual Studio中的托管调试器(我使用的是11.0)显示包含双引号和反斜杠的字符串值,如下所示: “{\”Text\”:\”C:\\\\Temp\”}” 偶尔我想以简单的forms显示像上面那样的转义文本: {“Text”:”C:\\Temp”} 我知道文本可视化器可以通过值旁边的放大镜访问,但是在调试一些文本操作例程时这很麻烦。 有没有办法在调试器中更改字符串值的显示?

由于名称相同,无法添加引用

自从VS 2013更新以来,我的行为是我无法添加对具有相同名称的2个项目的引用。 我做了以下事情: 添加了3个解决方案文件夹A,B和C. 在A和B文件夹中添加了类库“Core”的项目。 向文件夹C添加了ConsoleApplication类型的项目。 结果结构如下所示: Solution + A + Core + B + Core + C + ConsoleApp 在A的项目属性中输入以下内容: 大会名称:A.Core 默认命名空间:A.Core 在B: 大会名称:B.Core 默认命名空间:B.Core 在C.ConsoleApp中添加对A.Core的引用之后,我尝试将B.Core引用到控制台,我得到错误: 无法添加对“核心(B.Core)”的引用。 项目中已存在对组件“Core”的引用。 该解决方案是使用VS 2012创建的,并在升级后显示此行为。 我在控制台内设置了什么? 编辑:我在Youtube上发布了一个截屏video来解释这个问题并在Microsoft支持中添加了一个错误。 我仍然认为,这是一个错误。

如何在表单之间导航

我是一个新兴的c#和窗口forms我正在做一个项目,我遇到了一些问题 如何在窗口中导航窗体(我有一个菜单条,点击它会显示一个项目“品牌”,所以当我点击它,它应该在窗口内打开,我不想要使用mdiparent /容器,我有form1和form2,然后我把菜单条放在form1中,form1中有一些东西,如果使用mdiparent / container,form1 content / thing将阻止form2) 2.i使用下面的代码,问题是我想关闭form1,我点击菜单条中的“品牌”…但如何??? public partial class Form1 : Form { // i put the menu strip in form1 design public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void Check_Click(object sender, EventArgs e) { Form2 Check = new Form2(); Check.Show(); } }