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
, mengubahsuai kamus pelanggan semasa gelung SignalData
. Untuk menyelesaikannya, pertimbangkan untuk menukar gelung NotifySubscribers
: foreach
Kod Modified:
foreach(Subscriber s in subscribers.Values)
Dengan membuat salinan
menggunakanforeach(Subscriber s in subscribers.Values.ToList())
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!