2015-12-02 136 views
13

我正在使用Text Visualizer在Visual Studio中調試字符串變量。但是,似乎很大一部分在字符串的中間缺失。這背後的原因是什麼?Visual Studio Text Visualizer丟失文本

enter image description here

+0

在VS 2015中,長文本顯示正確,直到安裝Update 1爲止。Text Visualizer現在按照下面的答案進行解釋,微軟並沒有說他們改變了它或者爲什麼。 –

回答

17

Visual Studio中的文本展示臺只能顯示約32700字。如果你的字符串比這個長,它會自動用...替換字符串中間的多餘部分。

我發現這很困難。

編輯:這似乎已在更新2中修復。如果您在更新1上,請參閱鑽石的答案。

+6

令人討厭的事情,他們甚至不通知文本正在修剪。花了數小時才發現。有關這方面的消息嗎?這證實是一個錯誤? –

+2

有人會認爲他們會截斷字符串的結束,而不是中間...會讓它更明顯,這是VS,而不是我的Web服務調用造成的問題... – jleach

+0

非常感謝你爲此info ...因爲這個問題,我幾乎整整一天都被殺了...... Visual Studio截斷了XML文檔,我只看到了1個節點,同時代碼錶示有2個節點...這非常令人沮喪。 – Disappointed

2

有一個解決方案here

  1. 創建新項目類庫
  2. 添加新的形式MessageForm文本框裏面,檢查的MaxLength文本框多行性能。
  3. 添加.cs文件與如下因素的內容:
using System; 
using Microsoft.VisualStudio.DebuggerVisualizers; 
using System.Windows.Forms;  
[assembly: System.Diagnostics.DebuggerVisualizer(
typeof(TextVisualizer.DebuggerSide), 
typeof(VisualizerObjectSource), 
Target = typeof(String), 
Description = "My Visualizer")] 
namespace TextVisualizer 
{ 
    public class DebuggerSide : DialogDebuggerVisualizer 
    { 
     protected override void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider) 
     { 
      var message = new MessageForm(); 
      ((TextBox) message.Controls.Find("textbox1",false)[0]).Text = objectProvider.GetObject().ToString(); 
      message.ShowDialog(); 
     } 
    } 
} 
  • 構建項目
  • 找到包含已經建立的可視化和 的DLL複製到DLL以下任一位置:
    • VisualStudioInstallPath \ Common7 \包\調試\展示臺
    • 我的文檔\的Visu alStudioVersion \展示臺
  • 如果您要使用遠程調試管理可視化,將DLL複製到相同的路徑在遠程計算機上。 重新啓動調試會話。有關詳細信息,請參見How to: Install a Visualizer.

    4

    這是隨Visual Studio 2015 Update 1引入的問題,如此處所報告的:https://connect.microsoft.com/VisualStudio/feedback/details/2016177/text-visualizer-misses-corrupts-text-in-long-strings

    Microsoft將在Update 1之後的第一次更新中對此進行永久修復。同時,使用以下解決方法:您可以通過添加註冊表項來設置Text Visualizer截斷的長度。使用以下命令將長度設置爲一個較大的數字(例如250000):

    reg add HKCU\Software\Microsoft\VisualStudio\14.0\Debugger /v TextVisualizerStringLimit /t REG_DWORD /d [number]

    或者使用Visual Studio的早期版本,如果你已經安裝了一個。

    +0

    不知道他們的下一次更新是什麼時候,但是從14.0.24720.00 Update 1開始,這個錯誤仍然存​​在。 – jleach

    +1

    可以從這裏獲得更新2的候選版本:https://www.visualstudio.com/en-us/news/vs2015-update2-vs.aspx。它可能包含針對該問題的修復。只取決於它還有什麼打破... –

    +0

    酷 - 它與鑽石描述更新2一起工作! –