我有以下功能:
@H_404_2@private static string SanitizeVersionStringFromUnit(string version)
{
var santizedString = new string(version.Where(char.IsLetterOrDigit).ToArray()); ;
return santizedString;
}
然而,intellisense告诉我字符串不包含Where的定义,并且没有找到扩展方法.我使用System.Linq;在文件中声明.在非Xamarin项目中,此代码工作正常.
这是VS2015社区中的Xamarin.Forms PCL项目.是什么赋予了?
解决方法
您收到错误,因为PCL版本的字符串未实现IEnumerable< char>.您可以使用Cast来编译代码:
@H_404_2@private static string SanitizeVersionStringFromUnit(string version)
{
var santizedString = new string(version.Cast<char>().Where(char.IsLetterOrDigit).ToArray());
return santizedString;
}
有关更多详细信息,请参阅此问题: Why doesn’t String class implement IEnumerable in portable library?