Вы можете сделать основной метод класса Выражением Bodied Member , вот так (по крайней мере, для консольного приложения)
private static void Main(string[] args) => Console.WriteLine("asdasd");
Однако, это довольно уродливо, и яникогда бы не сделал это лично.Кроме того, целое выражение попытка поймать вещь тоже не устраивает меня.Это просто дополнительный вызов стека, чтобы запятнать трассировку стека, и, что хуже всего, вы не имеете дело с исключением и просто используете общий ловушку.
Я бы пересмотрел оба подхода
Если вы действительно хотите спуститься в эту кроличью нору, вам нужно пройти в T Item
public static void TryCatchLogError<T>(this T item, Action action)
{
try
{
action();
}
catch (Exception ex)
{
// LogError(ex);
}
}
private static void Main() =>
TryCatchLogError("asd", // <== here needs to be T Item
() =>
{
Console.WriteLine("asdasd");
});