添加参考对话框中的问题包含#的路径

时间:2010-07-09 21:22:11

标签: visual-studio visual-studio-2010 pro-power-tools

我是使用Microsoft开发工具的新手,但过去几周一直在使用Visual Studio 2010,.NET 4和C#。我昨天遇到了一个问题,就像我从一开始就成功地创建一个新项目一样:右键单击解决方案资源管理器中的项目→添加引用,用于调出此项目对话框:

Old Dialog Box http://img514.imageshack.us/img514/8978/oldaddreferencedialogue.jpg

在没有新项目的几周后,我昨天创建了一个项目并获得了一个新的“添加引用”对话框。并尝试添加我已添加数周的相同dll,现在导致此处出现错误:

New Dialog http://img692.imageshack.us/img692/2074/newaddreferencedialogue.png

所以,经过痛苦的一天试图确定原因之后,我觉得它与我在参考路径中的#对话中的新对话框有关。当我删除#一切按预期工作。考虑到微软在名称中有两种带有#的.NET语言,我很惊讶这个问题一直困扰着人们(我多年来听说过这个问题,但直到最近我才对微软的工具做过多次,所以当然我做了不记得了。)

来自Visual Studio新手的问题:

  1. 不在路径中使用#是常识吗?

  2. 当我的同事使用相同的VS版本仍然有旧的对话框来处理路径中的#时,如何/为什么我会得到这个新的“添加引用”对话框?

2 个答案:

答案 0 :(得分:9)

我的观点是,如果你在路径中使用奇怪的角色,你会得到你应得的。 :)

我知道核心VS产品中的路径中存在关于'#'字符的错误,以及Pro Power Tools扩展中的任何内容。进出URI和文件名的代码数量惊人,当通过System.Uri进行往返时,“#”字符(以及其后的所有内容)都会被删除。

一般来说,我认为可以安全地假设在创建文件名/路径时,会有10,000种不同质量的工具试图解析文件名,而这些工具的(大)子集将在“怪异”字符上失败。尽可能避免怪异的角色。你必须选择你的战斗。在理想的世界中,工具对这些问题都很有用。在现实世界中,最好将路径命名为“CSharp”而不是“C#”,然后继续生活中更重要的事情。

答案 1 :(得分:3)

第二个对话框是来自VS2010 productivity power tools pack的对话框 - 我自己没有使用它,所以不知道它有任何问题。你最近安装过吗?

相关问题