Один инструмент, о котором вы могли бы подумать, который легко интегрируется в вашу сборку, это NDepend . Это позволяет запускать различные метрики кода, которые затем можно использовать для предупреждения / сбоя сборки.
В CQL (встроенный язык запросов в NDepend) вы должны написать что-то вроде:
WARN IF Count > 0 IN SELECT TYPES FROM NAMESPACES "namespace" WHERE !IsSerializable
Очевидно, что при этом будут найдены пространства имен только для типов, включенных в сборки в вашем решении, но я предполагаю, что вы это имеете в виду.
NDepend может запускаться автоматически как часть вашей сборки в VS или на отдельном сервере сборки. Его также можно запускать как отдельное приложение.