2017/01/21(Sat) 10:53:58 編集(投稿者)
■No82627 (Azulean さん) に返信
> どうしても、メソッドチェーンで書きたいのであれば、自分でファイルに出力する拡張メソッドを書くことになります。
> それよりはすでに提案のある File.WriteAllLines を使うか、foreach で処理するかがわかりやすくて良いと思っています。
拡張メソッドの一例として。
もっとも、拡張メソッド内で File.WriteAllLines を使っているだけなので、同じような処理をたくさん書きたいということでもなければ、メソッドチェーンにこだわらない方がいいと思っています。
var source = Enumerable.Range(1, 10).Select(number => number.ToString());
source.ToTextFile(@"c:\temp\hogehoge.txt");
// 拡張メソッドにするためにはstaticクラスに書かなければならない。
public static class LinqFileExtensions
{
public static void ToTextFile(this IEnumerable<string> texts, string filePath)
{
File.WriteAllLines(filePath, texts.ToArray());
}
}