2010-09-29 55 views
7

我有一个网络系统,有几个挂钩到我们的TFS工作项目系统。我试图做的事情之一是,当执行某个动作时,它将当前文本放在一个字段中,并在“通用评论”字段中发表评论,以宣布字段之前的内容(是的,我知道,历史包含这个,但更高级的人希望在这里发表评论)。如何以编程方式将NewLines添加到TFS工作项文本框?

我遇到的问题是TFS似乎忽略了我的字符串中的Environment.NewLines。所以用这个代码:

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

因此,假如我的一般性评论部分包含:

THIS SENTENCE WAS ALREADY IN GENERAL COMMENTS 

我得到的一般评论部分下面的输出时,工作项保存

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

为什么它忽略了新的生产线,我如何才能在工作项目中找到新的生产线?

感谢,

回答

10

TFS工作项目内容常被加工为HTML。这很可能发生在这里,因此它忽略了文本中无关的换行符。尝试将内容包装在<pre>区块或使用<p>,看看是否解决了这个问题。

+5

啊,解释它。使用'
'的效果也很好:) – KallDrexx 2010-09-29 20:50:28

1

RTF或HTMl控件将使用并呈现html标记 - 因此取决于控件。尝试添加富格式文本并将其格式化为多行控件,然后在控制台应用程序中进行调试 - 浏览字段值 - 您将看到html标签。

+0

因此,如果情况如此,您至少需要
,空白和\ n将被html rtf控件忽略。 – Andy 2011-09-29 00:14:14

相关问题