2010-09-29 14 views
7

Tengo un sistema web que tiene algunos ganchos en nuestro sistema de elementos de trabajo TFS. Una de las cosas que trato de hacer es que cuando se realiza una determinada acción, toma el texto actual en un campo y hace un comentario en el campo "Comentarios generales" que anuncia el campo anteriormente (Sí, el historial contiene esto, pero los superiores quieren esto en los comentarios gen).¿Cómo agrego NewLines programáticamente a un cuadro de texto de elementos de trabajo TFS?

El problema que tengo es que TFS parece estar ignorando Environment.NewLines que tengo en mi cadena. Así que con este código:

    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()); 

Así asumiendo mi sección de comentarios General contiene:

THIS SENTENCE WAS ALREADY IN GENERAL COMMENTS 

me sale el siguiente resultado en la sección de comentarios generales cuando se guarda el elemento de trabajo

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

¿Por qué está ignorando las líneas nuevas y cómo puedo obtener una nueva línea en el elemento de trabajo?

Gracias,

Respuesta

10

TFS contenido de elementos de trabajo a menudo se procesa como HTML. Eso es probable que suceda aquí y por lo tanto está ignorando las líneas nuevas extrañas en el texto. Intente envolver el contenido en un bloque <pre> o usando <p> y vea si eso soluciona el problema.

+5

Aha que lo explica. El uso de '
' también funcionó :) – KallDrexx

1

Los controles RTF o HTMl usarán y representarán el marcado HTML, por lo que depende del control. Intente agregar y formatear texto enriquecido en un control de línea múltiple y luego depurarlo en una aplicación de consola; busque el valor del campo; verá las etiquetas html.

+0

por lo tanto, al menos necesitará
si este es el caso, el espacio en blanco y \ n serán ignorados por un control html rtf. – Andy

Cuestiones relacionadas