Встроенная проверка для WPF и Silverlight предназначена для быстрой проверки на стороне клиента (например, Regex, анализ значений и т. Д.).
Если вам нужно перейти на сервер для выполнения проверки (или проверка занимает много времени), я бы сделал это по-своему. Например, при нажатии кнопки сохранения и т. Д.
Допустим, у вас есть метод Save во ViewModel (вы не упоминаете, какую платформу MVVM вы используете):
public void Save()
{
//Do your validation, this might start a new thread (I use Async CTP myself)
//If validation is good, do your extra work, else display validation errors
}
Я бы просто выполнил всю работу, необходимую для этого, в рамках действия в вашей ViewModel