2010-05-01 7 views
6

Sto usando Sandcastle 2.4.10520 e Sandcastle Help File Builder 1.8.0 per generare un file di aiuto .chm.Documentare usando Sandcastle: Fare riferimento al valore enum usando <see>

Nella mia documentazione, sto usando i tag <see>.

Se provo a riferire un enum come <see cref="NumberStyles"/> funziona perfettamente.

Se provo a riferimento un valore di enumerazione come <see cref="NumberStyles.AllowTrailingWhite"/> ho un collegamento nel file di documentazione, ma il link mi porta a un MSDN Page not found

non ho ricevuto alcun avviso - la mia documentazione XML è corretto.

Ho notato che le pagine MSDN che fanno riferimento a un valore enum hanno anche un collegamento Page non trovato. Ad esempio: UInt64.Parse Method (String, NumberStyles, IFormatProvider) fa riferimento a NumberStyles.AllowHexSpecifier e questo porta a un altro MSDN Page not found.

Devo fare riferimento all'enum anziché al valore enum?

Cosa devo fare per riferire un enum? È possibile?

risposta

2

Il fatto che si verifichi su MSDN non promette nulla di buono. I valori enum hanno una documentazione XML?

Se ricordo correttamente, ci dovrebbero essere impostazioni in SHFB che ti permetteranno di forzare la generazione di documentazione per i membri che non hanno XML - o forse è un'impostazione che ti permette di escludere membri che non hanno documenti XML. Indipendentemente da ciò, dai una buona occhiata alle impostazioni per assicurarti di non escludere i membri dell'enum in questo modo.

In caso contrario, dovrebbe generare documentazione per ogni membro ei valori enum sono membri di tipi uguali a quelli di un campo const o statico.

MODIFICA: Sembra che almeno sul nuovo sito MSDN, i singoli valori enumerati non abbiano la propria pagina. Ad esempio, dai un'occhiata all'enum NumberStyles. In tal caso, potresti non avere un'opzione migliore del semplice collegamento all'enumerazione.

+0

Impossibile trovare un'impostazione in SHFB che controlli l'eventuale creazione di un collegamento a una pagina non esistente. Credo che Sandcastle non sia consapevole del fatto che MSDN non contiene una pagina separata per il valore enum. Posso collegarmi al valore enum specifico nella pagina enum? – brickner

+0

Che non lo so ... è passato più di un anno da quando ho usato Sandcastle/SHFB e la mia memoria è un po 'arrugginita. Da quello che ricordo, ci sono * un sacco * di interruttori con cui puoi giocare nell'interfaccia SHFB, quindi dai qualche occhiata in più per vedere se c'è qualcos'altro che puoi modificare per ottenere il risultato che desideri. Mi dispiace non posso offrire un consiglio migliore di quello: \ –