42

What's the proper way to comment this?

/// <summary>
/// Initializes a new instance of the <see cref="Repository"/> class.
/// </summary>
/// <param name="unitOfWork">The unit of work.</param>
public Repository(IUnitOfWork unitOfWork)
{
    this.UnitOfWork = unitOfWork;
}

VS complains about it:

Warning 11 XML comment on 'Data.Repository.Repository(Data.IUnitOfWork)' has cref attribute 'Repository' that could not be resolved C:\Projects\xx\yy\DataAccess\Repository.cs 35 58 Data

d219
  • 2,707
  • 5
  • 31
  • 36
mservidio
  • 12,817
  • 9
  • 58
  • 84

2 Answers2

52

You need to use curly braces:

/// <summary>
/// Initializes a new instance of the <see cref="Repository{T}"/> class.
/// </summary>

For each typeparam, just add an additional value in the braces, delimited with a comma.

d219
  • 2,707
  • 5
  • 31
  • 36
AnteSim
  • 1,265
  • 1
  • 12
  • 11
5

StyleCop has defined how it should look like.

If the class contains generic parameters, these can be annotated within the cref link using either of the following two formats:

/// <summary>
/// Initializes a new instance of the <see cref="Customer`1"/> class.
/// </summary>
public Customer()
{
}

/// <summary>
/// Initializes a new instance of the <see cref="Customer{T}"/> class.
/// </summary>
public Customer()
{
}
Tatranskymedved
  • 4,194
  • 3
  • 21
  • 47