首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >名称空间'DataAnnotations‘中不存在类型或名称空间名称'System.ComponentModel’

名称空间'DataAnnotations‘中不存在类型或名称空间名称'System.ComponentModel’
EN

Stack Overflow用户
提问于 2018-10-13 20:05:00
回答 4查看 4.4K关注 0票数 4

当我添加Nuget包System.ComponentModel.Annotations时,我得到了错误

名称空间'DataAnnotations‘中不存在类型或名称空间名称'System.ComponentModel’

发生的事情是,我从一个图书示例中打开了一个旧的ASP.NET Core1.0项目,并对其进行了VS17升级。然后,当然,我在VS17依赖项中收到了许多来自NuGet的警告。因此,我将项目转换为Core2.1,并更新了所有NuGet依赖项。

但现在它抱怨这些属性。

知道吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-10-15 10:39:59

好的,所以这个问题的一个旁路是在项目根dotnet restore的命令中运行,在VisualStudio完成他的转换之后。

这解决了这个问题,而不必转换为.NET核心2.0或更高版本。

票数 1
EN

Stack Overflow用户

发布于 2018-10-15 08:59:13

名称空间'DataAnnotations‘中不存在类型或名称空间名称'System.ComponentModel’

首先,您可以注意到关于包System.ComponentModel.Annotations的描述

没有可以使用的直接命名空间System.ComponentModel.Annotations。因此,尽管我们安装了System.ComponentModel.Annotations Nuget包,然后使用System.ComponentModel.DataAnnotations命名空间。对于那些像我这样被挂起不同名称空间更长时间的人来说,澄清是正确的。

因此,我们不需要第一个命名空间语句。

第二个问题,就像turao8所说的,Microsoft.AspNetCore.App --包括它自己版本的数据注释--不需要在nuget包中再次添加它。

我已经创建了一个带有任何其他nuget包的测试示例,它运行得很好:

要解决这个问题,您可以创建一个新的.net核心2.1项目,然后将代码复制到新项目,然后根据需要添加引用,毕竟旧的.net core 1.02.1仍然有很多不同之处。

希望这能有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2020-09-18 08:30:44

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52796857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档