Questions tagged «visual-studio»

如果对Visual Studio功能有特定疑问,请使用此标记。请勿在有关恰好是用Visual Studio编写的代码的问题上使用此标记。考虑标记您的问题链接到的确切技术领域,并标记一个特定版本的Visual Studio。请在问题中提及您确切的VS版本,版本和更新级别。


4
为什么在Visual Studio单元测试中的每个测试都会触发TestInitialize?
我使用Visual Studio 2010 Beta 2中我有一个单一的[TestClass],其中有一个[TestInitialize],[TestCleanup]和几个[TestMethods]。 每次运行测试方法时,初始化和清除方法也都运行! 我的印象是[TestInitialize]&[TestCleanup]每次本地测试只能运行一次。 那是对的吗?如果没有,执行此操作的正确方法是什么?

3
测试资源管理器(VS)显示“ <未知项目>”
使用.NET Framework 4.7和NUnit + NUnit3TestAdapter在VS2019中进行以下所有操作 我创建了一个名为Exitus.Tests的程序集,并添加了一些单元测试。但是,针对我无法解决的Nuget的某些问题,我创建了另一个名为Exitus.UnitTests的项目,并删除了旧项目中包含的一次文件(包括更改名称空间)。 现在,新的测试项目在资源管理器中正确显示了op,但是旧项目的“幽灵”仍然存在: 如果我尝试运行测试,则输出窗口将显示以下错误: System.InvalidOperationException:在Microsoft.VisualStudio.TestWindow.Client.TestContainer.TestContainerProvider上找不到以下TestContainer'C:\ Users \ xxx \ Source \ Repositories \ Expire \ Exitus.Tests \ bin \ Debug \ Exitus.Tests.dll' .d__46.MoveNext()---从上一个引发异常的位置开始的堆栈跟踪---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务)在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) )在Microsoft.VisualStudio.TestWindow.Controller.TestContainerConfigurationQueryByTestsBase.d__6.MoveNext()(...) 堆栈跟踪的时间更长,但奇怪的是第二行,指出它在找不到测试容器\Exitus.Tests\bin\Debug\Exitus.Tests.dll。这是旧测试项目的名称,我已删除并删除了该项目。我已经在整个项目中搜索了该词Exitus.Tests,但没有任何结果。 无论如何,是否有必要强制删除此“鬼”项目?
157 c#  visual-studio  nunit 


9
在Visual Studio中,App_Data文件夹有什么用?
在Visual Studio中创建新的ASP.NET应用程序时,会自动创建几个文件和文件夹。这些文件夹之一称为App_Data。 同样,通过选择菜单选项发布网站时,也可以Build-&gt;Publish使用复选框Include files from the App_Data folder。 我是否可以假设不能通过网络访问此文件及其子文件夹中的文件?例如,将只打算由应用程序代码使用的文件夹资源放入该文件夹中是否安全? 该App_Data文件夹的实际用途是什么? 编辑: 感谢您的所有答案。从到目前为止收到的答案中,我主要对两点感兴趣: App_Data本质上是基于文件的数据存储的存储点 它不应该在网络上可见,它是网络应用存储和读取数据的地方 有人可以指定如何确保“无法通过网络查看”吗?执行标准部署时,我可以依靠这一事实吗?还是需要检查服务器上的某些IIS设置? 在我有一组pdf文件的情况下,我只能从应用程序访问。是要使用App_Data文件夹的正确位置,还是应该创建一个单独的文件夹并手动设置IIS以确保Web不能访问它?

2
程序集引用的“特定版本”属性在Visual Studio中如何工作?
今天,我仔细查看了Visual Studio 2010中程序集引用的“特定版本”属性。在进行了一些意想不到的结果的实验​​之后,我开始尽可能多地了解该属性的工作方式。在我看来,即使如此,也无法提供所有答案,因此这是我对问题的自我解答: 如何准确地做在Visual Studio程序集引用作品的“特定版本”属性?

18
“复制本地”和参考项目的最佳实践是什么?
我有一个很大的C#解决方案文件(〜100个项目),并且我正在尝试缩短构建时间。我认为“复制本地”在很多情况下对我们来说都是浪费,但我想知道最佳做法。 在我们的.sln中,我们有依赖于程序集B的应用程序A,而程序集B则取决于程序集C。在我们的情况下,有数十个“ B”和少数“ C”。由于这些都包含在.sln中,因此我们正在使用项目引用。当前,所有程序集都内置到$(SolutionDir)/ Debug(或Release)中。 默认情况下,Visual Studio将这些项目引用标记为“ Copy Local”,这导致每个生成的“ B”都将每个“ C”复制到$(SolutionDir)/ Debug中一次。这似乎很浪费。如果我仅关闭“本地复制”,怎么办?其他拥有大型系统的人会做什么? 跟进: 许多响应建议将构建分解为较小的.sln文件...在上面的示例中,我将首先构建基础类“ C”,然后构建大量模块“ B”,然后构建一些应用程序,“一个”。在这个模型中,我需要从B到C的非项目引用。我遇到的问题是“ Debug”或“ Release”被烘焙到提示路径中,并且我最终构建了“ B”的Release版本。针对“ C”的调试版本。 对于那些将构建分为多个.sln文件的用户,您将如何解决此问题?


22
在Visual Studio 2010中“无法评估表达式,因为当前方法的代码已优化”
我在调试模式下使用Visual Studio 2010,并且未选中“优化代码”。我无法快速查看(或将鼠标悬停在调试器中)任何变量。我收到此错误“由于当前方法的代码已优化,无法评估表达式”。 即使是这样的行:int i = -3,对i进行快速监视,我也会得到“无法获取本地或参数'i'的值,因为该指令指针处不存在它,可能是因为它已经被优化了。” 在类似问题中引用的此链接似乎不适用。 有我缺少的设置吗?

11
“在证书存储区中找不到清单签名证书”-即使添加新密钥
我无法使用强名称键签名来构建项目-标题中的消息总是出现。 是的,该项目最初是从另一台计算机复制过来的。但是,即使我通过“项目属性”中的“签名”选项卡添加了新密钥,也仍然会显示此错误。 我尝试以管理员身份运行Visual Studio,并尝试将密钥手动添加到Windows证书存储。 救命! 编辑:我没有在新项目中遇到此错误,但是我很想让这个现有项目正常工作。即使创建新证书也不起作用!


30
Visual Studio 2017-Git失败并出现致命错误
我正在使用Visual Studio 2017社区版(CE),并且已登录我的Microsoft帐户并已连接到VSTS。我可以看到我所有的项目和存储库,但是当我尝试拉/取/推任何更改时,出现以下错误: Error encountered while pushing to the remote repository: Git failed with a fatal error. PushCommand.ExecutePushCommand 相应地,对于fetch和pull命令也是如此。 我在Visual Studio 2017安装程序上安装了Windows版Git,不仅它无法与VSTS一起使用,而且我也无法与我的任何GitHub存储库一起使用。有没有其他人注意到这一点?到目前为止,这是在我的两台计算机上发生的。 Visual Studio 2015企业版(EE)和CE对我来说完全可以正常工作。 似乎这个问题已经得到我的认可,这使我相信这是Visual Studio如何处理Git的问题。我还注意到,每次更新Visual Studio时,都会弹出此问题,并且我必须仔细阅读以下某些答案中的步骤才能使Git再次工作。我不确定为什么会这样,而且我也不知道Microsoft是否计划解决此问题。


3
如何在Visual Studio 2012或Visual Studio 2013中打开旧的MVC项目?
我有一个旧的ASP.NET MVC 2项目,我不想升级到MVC 3或MVC4。我正在运行Windows 8,Visual Studio 2012和Visual Studio 2013的新计算机上工作。当我尝试打开MVC时VS 2012或VS 2013中的2个项目我收到以下错误: 该项目与当前版本的Visual Studio不兼容 然后,该项目将被卸载,并在解决方案资源管理器中显示为灰色。我不想安装Visual Studio的另一个副本。如何在新版本的Visual Studio中打开旧的MVC项目?

2
如果(false == true)在抛出异常时执行块
我有一个相当奇怪的问题正在发生。 这是我的代码: private async Task BreakExpectedLogic() { bool test = false; if (test == true) { Console.WriteLine("Hello!"); throw new Exception("BAD HASH!"); } } 似乎真的很简单,不应点击Console.WriteLine或throw。由于某种原因,它总是命中目标throw。 如果我将其throw移入自己的方法,那么它将正常工作。我的问题是它如何忽略该if块并点击throw new Exception: 编辑1:我更新了代码以包括签名,我删除了与该问题无关的所有内容并运行了它,但它仍然会发生。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.