Я пытаюсь использовать fxCop в проекте C # в качестве основы для стандартов кодирования C #.
Используемый мной проект называется S # arp Architecture и находится в свободном доступе здесь: S # Arp Arch
Теперь, если я запускаю fxCop (большинство вещей уже исправлено), мне нужно исправить ошибку CA2214 fxcop для переопределенных методов в конструкторах.
На данный момент фрагмент кода выглядит следующим образом:
public class Region : Entity, IHasAssignedId<int>
{
public Region(string description)
{
Check.Require(!string.IsNullOrEmpty(description));
this.Description = description;
}
protected Region()
{
}
[DomainSignature]
> public virtual string Description { get; protected set; }
public virtual void SetAssignedIdTo(int assignedId)
{
Id = assignedId;
}
}
Большинство из них называется так в других файлах CD:
public static RegionDto Create(Region region)
{
if (region == null)
{
return null;
}
return new RegionDto()
{
Id = region.Id,
> Description = region.Description
};
}
Я пытался изменить тип метода (частный / защищенный и т. Д.), Но fxCop и модульные тесты часто противоречат друг другу, fxcop говорит, что он не похож на конструкторы с виртуальными методами, но модуль говорит, что методы должны быть открытыми / защищенный виртуальный или защищенный внутренний виртуальный, поймать 22 лил?
Так что любая помощь по исправлению этого правила fxcop будет признательна, спасибо.
(Ошибка возникает в строке, помеченной>, виртуальный метод get set, а при изменении другой> - там, где он жалуется)