gpt4 book ai didi

xamarin - .AsReadOnly() 不包括 PCL,尽管它在 MSDN 中被列为支持

转载 作者:行者123 更新时间:2023-12-04 17:44:58 26 4
gpt4 key购买 nike

根据 MSDN,.AsReadOnly() 方法被列为受 PCL 支持,但我无法在我的 Xamarin PCL 上引用它。

任何人都可以验证这一点吗?如果是这样,是否有任何替代 .AsReadOnly() 等效项?

https://msdn.microsoft.com/en-us/library/e78dcd75(v=vs.100).aspx

https://developer.xamarin.com/api/member/System.Collections.Generic.List%3CT%3E.AsReadOnly()/

最佳答案

List<T>.AsReadOnly()仅在某些 PCL 配置文件中可用。特别是那些针对 Windows 8/8.1 和 Windows Phone 8.1 非 Silverlight(32、111、259、328 等)的配置文件可能会不是 包括List<T>.AsReadOnly() ,因为此方法在这些平台上不可用。

简单的解决方法是创建 ReadOnlyCollection<T>通过构造函数:

List<T> list;
var listToReadOnly = new ReadOnlyCollection<T>(list);

如果你想保持你的源代码完整,你甚至可以实现一个扩展方法来完成这项工作。只需在公共(public)静态类中包含以下方法:
public static ReadOnlyCollection<T> AsReadOnly<T>(this List<T> list)
{
return new ReadOnlyCollection<T>(list);
}

关于xamarin - .AsReadOnly() 不包括 PCL,尽管它在 MSDN 中被列为支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37873317/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com