You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are situations where I want to inheritdoc with a cref to a member that is not part of a base class or inherited interface. This works fine in VS intellisense, but docfx does not resolve those.
For example:
publicinterfaceISomeCollection:ICollection<Thing>{/// <inheritdoc cref="IReadOnlySomeCollection.GetThingById(int)"/>
Thing GetThingById(intid);}publicinterfaceIReadOnlySomeCollection:IReadOnlyCollection<Thing>{/// <summary/// Gets current a thing by id./// </summary>
Thing GetThingById(intid);}
Is there a reason docfx limits inheritdoc to actual base classes / implemented interfaces?
The text was updated successfully, but these errors were encountered:
So it looks like v2.62 does actually support this now. For some members on some classes (doesn't seem to do this on interfaces) it decides to outputs warnings like this, even though they do resolve fine, appear in the docs generated, and some of them inherit docs from interface members that they do implement:
Could not resolve base documentation for 'Singulink.Collections.Map`2.Add(`0,`1)'
Could not resolve base documentation for 'Singulink.Collections.HashSetDictionary`2.ContainsKey(`0)'
Could not resolve base documentation for 'Singulink.Collections.HashSetDictionary`2.KeyCollection.Contains(`0)'
Could not resolve base documentation for 'Singulink.Collections.HashSetDictionary`2.ValueCollection.Contains(`1)'
Could not resolve base documentation for 'Singulink.Collections.HashSetDictionary`2.ValueCollection.Count'
Could not resolve base documentation for 'Singulink.Collections.HashSetDictionary`2.ValueCollection.Count'
Could not resolve base documentation for 'Singulink.Collections.ListDictionary`2.ContainsKey(`0)'
Could not resolve base documentation for 'Singulink.Collections.ListDictionary`2.KeyCollection.Contains(`0)'
There doesn't appear to be any rhyme or reason as to what warns and what doesn't. For example, Map.Add implements IMap.Add but shows up in the warnings above:
Other Map members that do exactly the same thing do not show any warnings, i.e. Map.Contains implements IMap.Contains exactly the same way:
Map.LeftValues does not actually implement IMap.LeftValues (the implementation for that is explicit) but does not appear in any warnings:
Nevermind - it works when you reference the .dll files as the metadata.src.files in docfx.json, but it does not work when you reference the .csproj files and try to generate docs from source, and unfortunately referencing .dll files means you lose the view source links.
None of the above examples work when referencing the csproj.
There are situations where I want to inheritdoc with a cref to a member that is not part of a base class or inherited interface. This works fine in VS intellisense, but docfx does not resolve those.
For example:
Is there a reason docfx limits inheritdoc to actual base classes / implemented interfaces?
The text was updated successfully, but these errors were encountered: