Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk membetulkan 'Koleksi diubahsuai; Operasi penghitungan tidak boleh melaksanakan' ralat di WCF?

Bagaimana untuk membetulkan 'Koleksi diubahsuai; Operasi penghitungan tidak boleh melaksanakan' ralat di WCF?

Linda Hamilton
Linda Hamiltonasal
2025-02-02 03:56:08987semak imbas

How to Fix the

Penyelesaian masalah "Koleksi telah diubah suai; operasi penghitungan tidak boleh melaksanakan" ralat dalam WCF

Koleksi "yang mengecewakan" diubahsuai; operasi penghitungan tidak boleh melaksanakan "kesilapan sering hilang apabila debugging, menjadikan diagnosis sukar. Artikel ini mengkaji senario pelayan WCF tertentu dan menawarkan penyelesaian.

Isu timbul dalam perkhidmatan Windows menggunakan kamus untuk mengesan pelanggan acara data. Mengeluarkan ID Pelanggan (UNUSSCRICTION) kadang -kadang menyebabkan kaedah

untuk membuang kesilapan ini. NotifySubscribers

Pelakunya yang mungkin adalah panggilan balik, seperti

, mengubahsuai kamus pelanggan semasa gelung SignalData. Untuk menyelesaikannya, pertimbangkan untuk menukar gelung NotifySubscribers: foreach

Kod asal:

Kod Modified:
<code class="language-csharp">foreach(Subscriber s in subscribers.Values)</code>

Dengan membuat salinan

menggunakan
<code class="language-csharp">foreach(Subscriber s in subscribers.Values.ToList())</code>
, penghitungan beroperasi pada gambar keadaan kamus pada permulaan gelung. Mana -mana pengubahsuaian berikutnya kepada kamus asal tidak akan menjejaskan penghitungan, dengan itu menghapuskan kesilapan jika panggilan balik

adalah sumber masalah. Ini mengasingkan gelung dari perubahan luaran, memastikan pelaksanaan yang lancar. subscribers.Values

Atas ialah kandungan terperinci Bagaimana untuk membetulkan 'Koleksi diubahsuai; Operasi penghitungan tidak boleh melaksanakan' ralat di WCF?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn