2010-09-29 5 views
7

Ho un sistema web che ha alcuni ganci nel nostro sistema di oggetti di lavoro TFS. Una delle cose che sto cercando di fare è che quando viene eseguita una determinata azione, prende il testo corrente in un campo e fa un commento nel campo "Commenti generali" annunciando che cosa era il campo in precedenza (Sì, lo so, la cronologia contiene questo ma i più alti vogliono questo nei commenti gen).Come posso aggiungere a livello di codice NewLines a una casella di testo di lavoro TFS?

Il problema che sto avendo è che TFS sembra ignorare Environment.NewLines che ho nella mia stringa. Quindi, con questo codice:

    item.Fields[GENCOMMENTS].Value = string.Concat(DateTime.Now.ToShortDateString() 
           , " - QA Dashboard - Required By Date Reason set to \"Hotfix\", but previously contained \"" 
           , item.Fields[REQBYDTREASON].Value.ToString() 
           , "\"." 
           , Environment.NewLine 
           , Environment.NewLine 
           , Environment.NewLine 
           , item.Fields[GENCOMMENTS].Value.ToString()); 

Quindi, supponendo la mia sezione generale commenti contiene:

THIS SENTENCE WAS ALREADY IN GENERAL COMMENTS 

ottengo il seguente output nella sezione generale commenti quando l'elemento di lavoro viene salvato

9/29/2010 - QA Dashboard - Required By Date Reason set to "Hotfix", but previously contained "hotfixtest".THIS SENTENCE WAS ALREADY IN GENERAL COMMENTS 

Perché sta ignorando le nuove linee e come posso ottenere una nuova riga nell'oggetto di lavoro?

Grazie,

risposta

10

TFS contenuto elemento di lavoro è spesso trattati come HTML. Probabilmente sta succedendo qui e quindi sta ignorando le newline estranee nel testo. Prova a racchiudere il contenuto in un blocco <pre> o utilizzando <p> e verifica se il problema è stato risolto.

+5

Aha questo lo spiega. L'uso di '
' ha funzionato pure :) – KallDrexx

1

I controlli RTF o HTMl utilizzeranno e renderanno il markup html, quindi dipende dal controllo. Prova ad aggiungere e formattare il rich text a un controllo multilinea, quindi esegui il debug in un'app della console: sfoglia il valore del campo: vedrai i tag html.

+0

quindi, avrai almeno bisogno di
se questo è il caso, lo spazio bianco e \ n saranno ignorati da un controllo html rtf. – Andy