Я пытаюсь документировать свои пространства имен в соответствии с рекомендациями this StackOverflow ответа:Как заставить Stylecop перестать жаловаться при регистрации пространств имен с помощью Sandcastle?
namespace Test
{
/// <summary>
/// The documentation for my namespace goes here.
/// </summary>
[System.Runtime.CompilerServices.CompilerGenerated]
internal class NamespaceDoc
{
}
// (other classes below...)
}
Однако, добавив в свой файл вызвал StyleCop испускать несколько ошибок. В частности, он жаловался, что документ может содержать только один класс на корневом уровне (SA1402) и что все внутренние классы должны быть после публичных классов (SA1202).
я смог StyleCop игнорировать второе предупреждение, добавив:
[System.Diagnostics.CodeAnalysis.SuppressMessage(
"StyleCop.CSharp.OrderingRules",
"*",
Justification = "Hack for Sandcastle.")]
Однако, я не смог его проигнорировать первое предупреждение. Я пытался применять еще один атрибут, но это не сделать трюк:
[System.Diagnostics.CodeAnalysis.SuppressMessage(
"StyleCop.CSharp.Maintainability",
"*",
Justification = "Hack for Sandcastle.")]
Какой самый лучший способ получить Sandcastle и StyleCop играть хорошо?
Я знаю, что могу изменить настройки в построителе файлов подсказок Sandcastle для документирования пространств имен, но я бы предпочел, если это не понадобится, потому что я хочу, чтобы вся документация была доступна на уровне исходного кода. Я также не хочу полностью отключать правила вообще, потому что они являются полезными в большинстве случаев.