Commons.Logging の外部注釈ファイルを作成しようとしています。これは実際には log4net 構成からのそのままのコピーですが、困惑するのは、次のコードを適切な で装飾するにはどうすればよいかということですStringFormatMethodAttribute
。
public interface ILog
{
void Error(Action<FormatMessageHandler> formatMessageCallback);
}
public delegate string FormatMessageHandler(string format, params object[] args);
// usage
log.Error(m => m(
"my expensive to calculate argument is: {0}",
CalculateMessageInfo()) );
属性はコンストラクターとメソッドでのみ有効ですが、このユースケースに強制する方法はありますか?