我已经习惯了新的IDE(它是vc#express),但第一次接触有些令人困惑。当我打开“添加引用”对话框并切换到.NET选项卡时,程序集列表上方的标签指出:“已过滤到:.NET Framework 4”。这是真的 - 我只能引用.NET 4.0程序集以及XNA 3.1之类的东西。但是我无法看到较旧的程序集,即Managed DirectX库,它们显然安装在我的计算机上,因为在vc#08中添加ref对它们没有任何问题。
这是什么?如何更改过滤器?标签是只读的。这些听起来像沉闷的家伙的问题,但我找不到答案,但没有直观的解决方案。提前致谢。
答案 0 :(得分:17)
更改新应用程序以定位.NET Framework 4和不 .NET Framework 4 客户端
“创建新应用程序时,默认情况下,某些项目会以.NET Framework 4 Client Profile为目标。”
http://msdn.microsoft.com/en-us/library/cc656912.aspx
“如果您的目标是.NET Framework 4 Client Profile,则无法引用不在.NET Framework 4 Client Profile中的程序集。而是必须以.NET Framework 4为目标。”
答案 1 :(得分:7)
我们已经创建了一个可以帮助您实现目标的工具。 Muse VSReferences将允许您从Add GAC Reference菜单项中向项目添加Global Assembly Cache引用。
问候
取值
答案 2 :(得分:7)
如何更改过滤器?
非常简单 - 您必须为整个项目更改Target .NET Framework。这不是痛苦:)在解决方案资源管理器中的项目名称只需人民币 - >属性 - >应用程序选项卡 - >目标框架(组合框)。选择你想要的。在“添加引用”对话框中更改组合框==更改过滤器。 ;)
答案 3 :(得分:5)
我遇到了类似的问题,直到我注意到较旧的.NET程序集实际上在列表中,只有一些非常奇怪的排序正在进行中。如果按程序集名称排序,则应按正确顺序查看它们。
答案 4 :(得分:1)
另一种可能性是进入项目的“属性”页面,并将目标框架从4.0更改为所需的框架。然后,您需要重新加载应用程序。现在你的参考应该在那里。添加完所需的参考后,请更改回4.0并再次重新加载 希望这会有所帮助。
答案 5 :(得分:0)
例如,如果您的项目是Framework 4,并且您想引用说Microsoft.Deployment.WindowsInstaller(它不在.NET选项卡的筛选列表中),那么请转到Browse选项卡并输入路径到参考项目,例如C:\ Program Files \ Windows Installer XML v3.5 \ SDK \ Microsoft.Deployment.WindowsInstaller.dll