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

BizTalk Server 2013 Azure VM Log Shipping and HA for hosts

How to Share webservice object to all user