IVisualizerObjectProvider 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将调试对象中的对象数据提供给可视化工具。
public interface class IVisualizerObjectProvider
public interface class IVisualizerObjectProvider
__interface IVisualizerObjectProvider
public interface IVisualizerObjectProvider
type IVisualizerObjectProvider = interface
Public Interface IVisualizerObjectProvider
- 派生
示例
public class DebuggerSide : DialogDebuggerVisualizer
{
override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
{
MessageBox.Show(objectProvider.GetObject<object>().ToString());
}
// . . . Other methods omitted for clarity.
}
注解
可视化工具是 Visual Studio 调试器用来显示 (以有意义的方式 可视化) 特定数据类型对象的小型程序。 为了可视化对象,可视化工具使用调试器进程 (调试器端 (运行的代码,并使用调试 器端) ) (调试过程中运行的代码。
调试器端和调试程序端通过使用 VisualizerObjectSource 和 IVisualizerObjectProvider相互通信。
调试对象端使用 VisualizerObjectSource 为调试器端指定 VisualizerObjectSource 对象。 调试器端通过调用接口上 IVisualizerObjectProvider 的方法来请求并接收此信息。
可视化工具可以编辑和显示数据。 如果可视化工具支持编辑数据,则必须通过使用 TransferData(Stream)TransferObject(Object)或 调用ReplaceData(Stream)或ReplaceObject(Object)将数据传输回调试对象来完全替换数据。 如果要将数据保存回来,还需要创建自己的对象源。
属性
IsBinaryFormatterSupported |
指定调试对象是否支持 BinaryFormatter,因为它在 .NET 5 中已弃用。 否则,提供程序大多使用 JSON 来与可视化工具通信。 |
IsObjectReplaceable |
指定是否可以创建替换对象。 也就是说,确定要可视化的数据对象是可替换的 (读/写) 还是不可替换的 (只读) 。 |
方法
GetData() |
获取有关正在调试的对象的初始数据 Blob。 数据将写入提供的 MemoryStream 中。 |
GetObject() |
已过时.
使用 GetData 获取数据,然后反序列化(假设已完成默认序列化) |
ReplaceData(Stream) |
基于给定的序列化数据创建 对象的替换副本。 |
ReplaceObject(Object) |
使用默认序列化序列化对象,然后使用 ReplaceData 设置数据 |
TransferData(Stream) |
将数据双向传输到 VisualizerObjectSource 上的 TransferData 方法 |
TransferObject(Object) |
已过时.
使用默认序列化序列化传出对象,然后调用 TransferData。 返回时反序列化传入的数据并返回反序列化的对象 |