IAsyncVisualizerObjectProvider Arabirim
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
içinde tanımlanan IVisualizerObjectProvider2 ve hata ayıklayıcıdan görselleştiriciye veri geçirme işlevselliği sağlayan yöntemler için zaman uyumsuz bir uygulama sağlar.
public interface IAsyncVisualizerObjectProvider : Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider2
type IAsyncVisualizerObjectProvider = interface
interface IVisualizerObjectProvider2
interface IVisualizerObjectProvider
Public Interface IAsyncVisualizerObjectProvider
Implements IVisualizerObjectProvider2
- Uygulamalar
Açıklamalar
IVisualizerObjectProvider VS 17.2 için 'nin Show(IDialogVisualizerService, IVisualizerObjectProvider) ileriye doğru yöntemine DialogDebuggerVisualizergeçirilen nesne bu türdedir, bu nedenle bu yeni işlevi kullanmak için bunu atamanız gerekir.
Özellikler
| IsBinaryFormatterSupported |
.NET 5'te kullanım dışı bırakıldığından debuggee'nin BinaryFormatter'i desteklediğini belirtir. Aksi takdirde, sağlayıcı görselleştiriciyle iletişim kurmak için en çok JSON kullanır. (Devralındığı yer: IVisualizerObjectProvider) |
| IsObjectReplaceable |
Değiştirme nesnesinin oluşturulup oluşturulamayacağını belirtir. Yani, görselleştirilen veri nesnesinin değiştirilebilir (okuma/yazma) veya yer değiştirilemez (salt okunur) olup olmadığını belirler. (Devralındığı yer: IVisualizerObjectProvider) |
Yöntemler
| Deserialize(Stream) |
Geçersiz.
Seri durumdan çıkarma kodu yazmayı kolaylaştıran eski görselleştiriciler tarafından kullanılan eski yardımcı yöntemi. Verilen nesneyi akıştan okumak için varsayılan ikili serileştirmeyi kullanır. Ancak, kullanımıyla ilgili güvenlik açıkları nedeniyle artık kullanılmamalıdır ve .NET'in ASP.NET Core 5.0 gibi daha yeni sürümlerini oluşturur. İkili SeriLeştirmeyi destekleyen bir hedef uygulamada çağrılırsa, yöntem tamamlandıktan sonra akış okunur ve temel alınan nesneyi döndürüriz. (Devralındığı yer: IVisualizerObjectProvider2) |
| GetData() |
Hata ayıklanan nesneyle ilgili ilk veri blobunu alır. Veriler sağlanan MemoryStream'e yazılır. (Devralındığı yer: IVisualizerObjectProvider) |
| GetDeserializableObject() |
GetData kullanarak verileri alır ve varsayılan serileştirme desteklenmiyorsa çağıranın JSON ile seri durumdan çıkarabilmesi için bir IDeserializableObject döndürür. (Devralındığı yer: IVisualizerObjectProvider2) |
| GetDeserializableObjectAsync(CancellationToken) |
GetData'nın zaman uyumsuz bir sürümünü kullanarak verileri alır ve varsayılan serileştirme desteklenmiyorsa çağıranın JSON ile seri durumdan çıkarabilmesi için bir IDeserializableObject döndürür. |
| GetDeserializableObjectFrom(Stream) |
Hedef uygulamanın İkili Serileştirmeyi desteklemeyebileceği durumlar için seri durumdan çıkarılabilir bir nesne almak için kullanılabilecek yardımcı yöntemi. Böyle durumlarda, temel alınan biçim JSON kullanılarak seri hale getirilmelidir, böylece arayanlar seri durumdan çıkarılmasını istedikleri nesnenin türünü belirlemek için tek tek özellikleri sorgulayabilir. (Devralındığı yer: IVisualizerObjectProvider2) |
| GetObject() |
Geçersiz.
GetData kullanarak verileri alır ve ardından varsayılan serileştirmenin yapıldığını varsayarak seri durumdan çıkarılır (Devralındığı yer: IVisualizerObjectProvider) |
| ReplaceData(Stream) |
Verilen serileştirilmiş verileri temel alarak nesnenin yeni bir kopyasını oluşturur. (Devralındığı yer: IVisualizerObjectProvider) |
| ReplaceDataAsync(Stream, CancellationToken) |
Zaman uyumsuz olarak verilen serileştirilmiş verileri temel alarak nesnenin yeni bir kopyasını oluşturur. |
| ReplaceObject(Object) |
Varsayılan serileştirmeyi kullanarak nesneyi serileştirir ve ardından ReplaceData kullanarak verileri ayarlar (Devralındığı yer: IVisualizerObjectProvider) |
| Serialize(Object, Stream) |
Serileştirme kodu yazmayı kolaylaştıran yardımcı yöntemi. Hedef uygulama İkili Serileştirmeyi destekliyorsa, BinaryFormatter sınıfının yardımıyla nesneyi akışa seri hale getirir. Bu desteklenmiyorsa (.NET'in daha yeni sürümlerinde böyledir), nesneyi JSON biçiminde seri hale getirmek varsayılan olarak kullanılır. (Devralındığı yer: IVisualizerObjectProvider2) |
| TransferData(Stream) |
VisualizerObjectSource üzerindeki TransferData yöntemine verileri çift yönlü olarak aktarır (Devralındığı yer: IVisualizerObjectProvider) |
| TransferDeserializableObject(Object) |
IDeserializableObject olarak kullanarak giden nesneyi serileştirir ve ardından TransferData'yi çağırır. Dönüşte gelen veriler seri durumdan çıkarılır ve bir IDeserializableObject içinde sarmalanan nesneyi döndürür. (Devralındığı yer: IVisualizerObjectProvider2) |
| TransferDeserializableObjectAsync(Object, CancellationToken) |
IDeserializableObject olarak kullanarak giden nesneyi serileştirir ve ardından TransferData'nın zaman uyumsuz bir sürümünü çağırır. Dönüşte gelen veriler seri durumdan çıkarılır ve bir IDeserializableObject içinde sarmalanan nesneyi döndürür. |
| TransferObject(Object) |
Geçersiz.
Varsayılan serileştirmeyi kullanarak giden nesneyi serileştirir ve ardından TransferData'yi çağırır. Dönüşte gelen veriler seri durumdan çıkarılır ve seri durumdan çıkarılmış nesne döndürülüyor (Devralındığı yer: IVisualizerObjectProvider) |