4

matchcollectionのParallel.Foreachループを作成しようとしています。それは私が作ったスクレーパーの中にあります。Parallel.Foreachに何を入れるかを知る必要があります

MatchCollection m = Regex.Matches(htmlcon, matchlink, RegexOptions.Singleline);

                Parallel.ForEach(WHAT DO I PUT HERE? =>
                {

                        Get(match.Groups[1].Value, false);
                        Match fname = Regex.Match(htmlcon, @"<span class=""given-name"(.*?)</span>", RegexOptions.Singleline);
                        Match lname = Regex.Match(htmlcon, @"span class=""family-name"">(.*?)</span>", RegexOptions.Singleline);

                        firstname = fname.Groups[1].Value;
                        lastname = lname.Groups[1].Value;

                        sw.WriteLine(firstname + "," + lastname);
                        sw.Flush();

                }):

私は試した:

Parallel.ForEach<MatchCollection>(m,match  =>

しかし、運がない!

前もって感謝します!:)

4

1 に答える 1

14

これは、がジェネリックをParallel.ForEach期待していて、非ジェネリックのものだけを実装しているためです。IEnumerableMatchCollection

これを試して:

Parallel.ForEach(
    m.OfType<Match>(),
    (match) =>
    {
    );
于 2012-05-28T18:39:01.137 に答える