如何以编程方式将NewLines添加到TFS工作项文本框?

时间:2010-09-29 20:37:15

标签: c# tfs newline tfs-workitem

我有一个Web系统,它在我们的TFS工作项系统中有一些钩子。我要做的其中一件事是,当执行某个操作时,它会将当前文本放在一个字段中并在“常规注释”字段中进行注释,以宣布该字段之前是什么(是的,我知道,历史包含这个,但是高层人士希望在gen评论中这样做。)

我遇到的问题是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

为什么忽略新行,如何在工作项中添加新行?

谢谢,

2 个答案:

答案 0 :(得分:11)

TFS工作项内容通常以HTML格式处理。这可能发生在这里,因此它忽略了文本中无关的新行。尝试将内容包装在<pre>块中或使用<p>,看看是否能解决问题。

答案 1 :(得分:1)

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