Простейший способ проверить DataContractAttribute, вероятно, таков:
bool f = Attribute.IsDefined(typeof(T), typeof(DataContractAttribute));
Тем не менее, теперь, когда DC поддерживает сериализацию POCO, она не завершена. Более полный тест на сериализуемость DC будет:
bool f = true;
try {
new DataContractSerializer(typeof(T));
}
catch (DataContractException) {
f = false;
}