我有一个包含验证检查的方法,我正在使用NLog,并且希望在开始时记录异常消息并“同时”抛出异常,尽可能避免代码膨胀。目前,我执行以下操作,但似乎有点笨重。是否有更好的方法?
我想要的更多是这样的。
在记录完消息后,
public static void ValidateValue(string value)
{
if (!string.IsNullOrWhiteSpace(value) && value.Contains(","))
{
ArgumentException ex = new ArgumentException(string.Format("value cannot contain ',': {0}", value));
Logger.Error(ex);
throw ex;
}
}
我想要的更多是这样的。
public static void ValidateValue(string value)
{
if (!string.IsNullOrWhiteSpace(value) && value.Contains(","))
throw Logger.Error<ArgumentException>("value cannot contain ',': {0}", value);
}
在记录完消息后,
Logger.Error<>
方法返回 ArgumentException
。这似乎是有用的东西,可能已经存在,但也许我必须编写自己的扩展方法?谢谢!