2014-08-29 146 views
8

我正在尝试为自定义转换实现IConvertible。我使用的.NET便携式,它似乎不是那里可用。但MSDN documentation说:无法找到类型或名称空间名称'IConvertible'

便携式类库
支持:可移植类库

我为此担心一点也出现:

这个API是不是CLS兼容。

这就是为什么它可能没有得到解决的原因吗? 根据文档,它应该是System命名空间的一部分。 我正试图在一个结构中实现接口。

东西就行:

public struct ABC: Blah<Demo>, IConvertible 
{} 

我有一种感觉,我感到真的对小错过了什么。
更多信息:我针对的.NET Framework 4.5和Windows 8

+0

“受支持位于:可移植类库“的意思是 - ”在构建可移植类库时,可以选择一些目标组合,但这种组合可以使用“ - 但它的意思是”对于可移植类库中的任何目标组合,这种类型将可用“。那么,您在PCL中选择了哪些目标? – 2014-08-29 06:27:42

+1

现在我已经在Properties-> Library-> Targeting中选择了.NET Framework 4.5和Windows 8 – NotAgain 2014-08-29 06:30:01

+2

是的,它在Windows Store应用程序中不受支持。 – 2014-08-29 06:34:03

回答

5

“支持:可移植类库”仅仅工作了无论是在方案支持的开始。您还必须查看有关支持的更多信息,以查看您的PCL目标是否受支持。你说你的目标的.NET Framework 4.5和Windows 8让我们比较支持信息IConvertible和,说IComparable

IConvertible

.NET框架
支持: 4.5.2,4.5.1,4.5,4,3.5,3.0,2.0,1.1,1.0
.NET框架客户端配置文件
支持:4,3.5 SP1
便携式类库
支持:可移植类库
.NET的Windows Phone应用
支持:Windows Phone的8.1的Windows Phone 8,Silverlight的8.1 ​​

而且IComparable

.NET Framework
受以下版本支持:4.5.2,4.5.1,4.5,4,3.5,3.0,2.0 ,1.1,1.0
.NET Framework客户端配置文件
受以下版本支持:4,3。5 SP1
便携式类库
支持:可移植类库
.NET的Windows Store应用程序
支持:Windows 8中
.NET的Windows Phone应用
支持:视窗Phone 8.1,Windows Phone 8,Silverlight 8.1

因此,在我们建立“它在PCL中支持”后,您就可以编辑看看其他部分,并将其与您的目标集进行比较。如果您的任何目标不是列为受支持,那么您将无法在当前PCL中使用该类型(不移除不支持的目标)

+0

只需添加 - 它仍然在.NET 4.6.1和.NET Core项目中受支持。 – Mafii 2016-12-07 13:44:36

+0

似乎无法在PCL中找到'IConvertible'。 – Shimmy 2017-07-24 19:53:25

+0

@Shimmy同样在这里。 – 2017-07-26 09:10:48

相关问题