[c#]LINQ 中 Xamarin 的字符串不工作?

发布时间: 2017/2/26 1:14:42
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有以下的功能︰

    private static string SanitizeVersionStringFromUnit(string version)
    {
        var santizedString = new string(version.Where(char.IsLetterOrDigit).ToArray()); ;
        return santizedString;
    }

然而,智能感知告诉我字符串不包含一个定义为在哪里可以找到没有扩展方法。我有 using System.Linq; 文件中声明。在非 Xamarin 项目此代码工作正常。

这是在 VS2015 社区 Xamarin.Forms PCL 项目。谁给了?

解决方法 1:

您收到的错误因为 PCL 版本的 string 未实现 IEnumerable<char> 。您可以使用 Cast 来使代码能够编译︰

private static string SanitizeVersionStringFromUnit(string version)
{
    var santizedString = new string(version.Cast<char>().Where(char.IsLetterOrDigit).ToArray());
    return santizedString;
}

看到这个问题的更多详细信息︰为什么不字符串类实现 IEnumerable 便携式库中?

官方微信
官方QQ群
31647020