NDpend CQLinq для сигнального правила кода

Я новый клиент NDpend, так что извините, мой вопрос глупый... Я хочу иметь правило, которое показывает мне, когда у меня есть конструктор с определенной строкой кода. Рассмотрим этот пример

public StatusViewModel
{
   this.userService = ServiceLocator.Default.ResolveType<IUserService>();
}

Является ли это возможным? учитывая, что он должен быть определен в конструкторе и должен иметь ссылку на ServiceLocator.Default.ResolveType

Спасибо


person advapi    schedule 04.08.2017    source источник


Ответы (1)


Если вы хотите, чтобы конструктор обращался к

ServiceLocator.Default.ResolveType<IUserService>()

Правило должно выглядеть

warnif count > 0
from m in Application.Methods
where m.IsConstructor 
&& !m.IsUsing("Microsoft.Practices.ServiceLocation.ServiceLocator.get_Default()") 
&& !m.IsUsing("Microsoft.Practices.ServiceLocation.ServiceLocator.ResolveType<T>()")
select m
person Patrick from NDepend team    schedule 06.08.2017