Я использую библиотеки качества Mono и Lokad для разработки API, который делает такие вещи, как проверка характеристик методов, чтобы увидеть, генерируют ли они исключения и т. Д. И т. Д.
Один из моих методов в этом API выглядит следующим образом:
// Get all methods which have a NotImplementedException
var throwingMethods = _codebase.Methods
.Where(m => m.GetInstructions()
.Exists(i => i.Creates<NotImplementedException>())
).ToArray();
return throwingMethods;
Как я могу это проверить? C # не имеет собственной нативной способности делать то же самое. Возможно, я мог бы просто собрать небольшую сборку, сделать жестко запрограммированную коллекцию и сравнить?
Спасибо