سؤال

وجدت نفسي في الحالة التي يكون فيها لدي الأسلوب مع هذا التوقيع

void DoSomething(IEnumerable<T> before, IEnumerable<T> after)

وأنا أجد نفسي في كثير من الأحيان الحاجة إلى استدعاء عندما كنت قد حصلت على مجرد عنصر واحد وليس IEnumerable.

وفكرت في إضافة الزائدة ثلاثة، ولكن هذا لا يساعد عندما واحدة من الحجج لاغيا.

وحتى ظننت أنني يمكن أن مجرد "يختتم" بلدي عنصر واحد في IEnumerable وإرسالها، ولكن لا أستطيع أن أجد أي شيء على Enumerable الذي يشبه ما أريد (ربما أنا لا أبحث بجهد كاف).

وهكذا أنا أبحث في شيء من هذا القبيل

    public static IEnumerable<T> EnumerableUnit<T>(T item)
    {
        if(item != null) yield return item;
    }

هل هذه فكرة جيدة؟ أم أن هناك شيئا أفضل وأرجو أن تفعل؟

هل كانت مفيدة؟

المحلول

وهذا قد يساعد على:

new[]{obj}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top