2016-04-23 7 views
5

私は、次の機能があります。しかし、インテリセンスは、文字列はと何の拡張メソッドが見つからないことができるの定義が含まれていない私に言っているXamarinの文字列でLINQが機能しませんか?

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プロジェクトです。何がありますか?

答えて

10

stringのPCLバージョンではIEnumerable<char>が実装されていないため、エラーが発生しています。あなたは、コードのコンパイルを行うためにCastを使用することができます。 Why doesn't String class implement IEnumerable in portable library?

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

は、より多くの詳細については、この質問を参照してください。

関連する問題