Что лучше при использовании IEnumerable с одним элементом: yield return или return []?

Это один из тех вопросов типа « вы можете сделать это разными способами » . Рассмотрим следующий код:

protected virtual IEnumerable<ScriptReference> GetScriptReferences()
{
    ScriptReference referece = new ScriptReference();
    referece.Assembly = "FeyenoordEnabled";
    referece.Name = "FeyenoordEnabled.PassTextBox.js";

    return new ScriptReference[] { referece }; 
}

protected virtual IEnumerable<ScriptReference> GetScriptReferences()
{
    ScriptReference referece = new ScriptReference();
    referece.Assembly = "FeyenoordEnabled";
    referece.Name = "FeyenoordEnabled.PassTextBox.js";

    yield return referece;
}

Мне нужно вернуть только один элемент. Первая часть кода возвращает массив с одним элементом, а вторая - элементом. Что лучше и почему?

9
задан Uwe Keim 21 November 2011 в 21:23
поделиться