【发布时间】:2015-11-20 15:29:27
【问题描述】:
我正在重建一个类库(便携式)。
图书馆 --> 定位设置为:
错误列表显示在第一位:
严重性代码描述项目文件行
错误 CS0234
命名空间“System”中不存在类型或命名空间名称“Linq”(您是否缺少程序集引用?)
如果进行重建,我会收到错误:
Severity Code Description Project File Line
错误 正在构建的项目的处理器架构“MSIL”与参考“C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll”、“x86”的处理器架构不匹配”。这种不匹配可能会导致运行时失败。请考虑通过配置管理器更改项目的目标处理器体系结构,以便在项目和参考之间对齐处理器体系结构,或者依赖具有与项目的目标处理器体系结构匹配的处理器体系结构的参考。
注意如果我更改定位(但我不想这样做,仅用于测试!) 到 NET Framework 4.0.3,错误消失,所有重建都很好!
我已尝试清理/重建整个解决方案,关闭/重新打开 VS,重新启动 Windows...
昨天我更新了所有的 VS2015 扩展和更新,也更新了很多东西(Azure、VS 重启、ecc...)
使用语句:
问题: 1) 可能发生了什么损坏了我的 VS 安装?
2) 我可以做哪些测试?
编辑
在文件系统中,在 *c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETPortable* 下 我有这些文件夹:
v4.0\
v4.5\
v4.6\
v5.0\
该项目是一个类库,本质上包含 .resx 和一个 .cs 文件。
所有 .resx 文件都显示错误,如果我点击其中一个,我会得到:
无法解析目标框架的 mscorlib '.NETPortable,版本=v4.0,配置文件=Profile328'。如果发生这种情况 未安装目标框架,或者如果框架名字对象是 格式不正确。
EDIT2
如果我将目标设置为 x86,则在配置管理器中 错误不匹配消失 但 其他错误仍然存在:
基本上是这样的
使用 System.--> 指向不同的位置 ??!!
在 System.Linq 被发现之前。
如果我更改 Targeting-->找到 Net 4.0.3 System.Linq
如果我更改 Targeting-->Net 4.0 System.Linq 丢失!
VS 到底在哪里搜索这个 System.Linq?
【问题讨论】:
-
所以你做了所有的更新然后问题就开始了?
-
来吧@Spiderman77,错误正在告诉你到底是什么问题和或问题如果..它期望在标题
using System.Linq中的使用中看到同样在更改目标时这告诉你1 或 2 件事 1. 它向后兼容 2. 你设置的更高的框架在其他不受支持的文件中有 dll .. 你使用Nuget -
@MethodMan 我认为他有这种用法,这就是错误的来源。
-
@MethodMan 我没有改源码
-
该错误是由您试图破解原始问题引起的。复杂的问题确实让我们很难非常帮助您,非常关键的是您只关注最初的事故。让您的机器恢复正常工作往往需要一种没人喜欢发布的答案。
标签: c# visual-studio-2015 portable-class-library