有没有一种方法可以使用.ForEach同时将列表中的多个属性设置为“”或null?

Ala*_*an2 0 c#

我有此代码可以工作,但我想简化一下。我试图将每个.ForEach串在一起,但似乎不可能。有人可以建议我如何结合这些:

            phraseSources
                .ToList()
                .ForEach(i => i.JishoExists = "");
            phraseSources
                .ToList()
                .ForEach(i => i.CommonWord = "");
            phraseSources
                .ToList()
                .ForEach(i => i.JishoWanikani = null);
            phraseSources
                .ToList()
                .ForEach(i => i.JishoJlpt = null);
Run Code Online (Sandbox Code Playgroud)

D-S*_*hih 5

因为ForEach第一个参数Action<T>意味着您可以将委托方法与一个参数一起使用。

您可以尝试在委托参数上使用大括号。

phraseSources
    .ToList()
    .ForEach(i => {
        i.JishoExists = "";
        i.CommonWord = "";
        i.JishoWanikani = null;
        i.JishoJlpt = null;
    });
Run Code Online (Sandbox Code Playgroud)

  • 这不适用于结构。我冒风险说`ToList()。ForEeach`有点反模式。 (2认同)