Broken XML docu link when implementing interface


hello,


please consider following minimal code example:

namespace classlibrary
{
public class class : ivalueprovider { public int value { { return 0; } } } [contractclass(typeof(valueprovidercontract))] public interface ivalueprovider { int value { get; } } [contractclassfor(typeof(ivalueprovider))] abstract class valueprovidercontract : ivalueprovider { int ivalueprovider.value { { contract.ensures(contract.result<int>() >= 0); return 0; } } }
}

in project settings, enabled "emit contracts xml file". in general feature works , it. unfortunately, example above, there seems problem in generated xml docu file. member documentation of class.value getter looks this:

    <member name="p:classlibrary.class.value">       <getter>         <ensures inheritedfrom="m:classlibrary.ivalueprovider.get_value" inheritedfromtypename="ivalueprovider" csharp="result &gt;= 0" vb="result &gt;= 0">result &gt;= 0</ensures>       </getter>     </member>

when xml docu file used sandcastle generate class reference documentation, following warning appears:

c:\program files (x86)\ewsoftware\sandcastle file builder\sandcastlehelpfilebuilder.targets(38,3): warning : buildassembler : warning : resolvereferencelinkscomponent: [p:classlibrary.class.value] unknown reference link target 'm:classlibrary.ivalueprovider.get_value'.

the link "m:classlibrary.ivalueprovider.get_value" seems wrong. sandcastle generates broken link when creating in docu. think should rather "p:classlibrary.ivalueprovider.value".

what think, issue in ccdocgen or sandcastle?


thanks, stefan

hi

looks duplicate of this:

https://social.msdn.microsoft.com/forums/en-us/2766c8c7-f7a6-4585-8ac8-024b26f702fa/ccdocgen-reference-link-problems-with-inheritedfrom?forum=codecontracts

this should fixed in latest shfb releases.

kind regards,

michael



DevLabs  >  Code Contracts



Comments

Popular posts from this blog

Azure DocumentDB Owner resource does not exist

How to Share webservice object to all user

How to fix error Msg 1801, Level 16, State 3, Line 1