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

Jos*_*ann 2 visual-studio-2010 visual-studio pro-power-tools

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

旧对话框http://img514.imageshack.us/img514/8978/oldaddreferencedialogue.jpg

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

新对话http://img692.imageshack.us/img692/2074/newaddreferencedialogue.png

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

来自Visual Studio新手的问题:

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

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

Bri*_*ian 9

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

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

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

  • 4个downvotes和3个旗帜?到底是怎么回事? (3认同)