internal string GetUnderlyingString(DkmClrValue value, DkmInspectionContext inspectionContext)
        {
            RawStringDataItem dataItem = value.GetDataItem<RawStringDataItem>();
            if (dataItem != null)
            {
                return dataItem.RawString;
            }

            string underlyingString = GetUnderlyingStringImpl(value, inspectionContext);
            dataItem = new RawStringDataItem(underlyingString);
            value.SetDataItem(DkmDataCreationDisposition.CreateNew, dataItem);
            return underlyingString;
        }