В одном из наших проектов есть много кода, который выглядит так:
internal static class Extensions
{
public static string AddFoo(this string s)
{
if (!string.IsNullOrEmpty(s)) return s + "Foo";
return "Foo";
}
}
Есть ли какая-либо явная причина для этого, кроме "проще сделать публикацию типа позже?"
Я подозреваю, что это имеет значение только в очень странных случаях кросс (отражение в Silverlight) или вообще нет.