Puan, biz de TAP (Görev tabanlı programlama Desen) ile anlaşma. Bazı noktalarda, biz ContinueWith
bir zaman uyumsuz yöntemine devamını sağlamak istiyoruz ve biz ContinueWith
üzerine geçmesi temsilci içindeki bazı şeyler. Brad Wilson gibi SynchronizationContext ve ASP.NET Web API Genişletilebilirlik
SynchronizationContext
almak gerekir tek yer ve (Bir ASP.NET Web API uygulamasında yapmaz şey)
HttpContext.Current
oynamak için gereken yerdir
Thread.CurrentPrincipal
gibi iş parçacığı için bazı bilgileri ayarlamanız gereken yer.
Yani soru şu: biz hiç biz vb İleti Yükleyici, Filtreler, biçemleyicilerle gibi bazı genişletilebilirlik noktalarında devamlılık sağlamak zaman SynchronizationContext
geri almak istiyor musunuz?
teşekkürler! Soruyu ASP.NET MVC ile karıştırdığınızı düşünüyorum. ASP.NET Ana Bilgisayarı altında olmadığınızı varsayalım. Ardından, HttpContext'e sahip olmayacaksınız. Dolayısıyla, uzayabilirlik noktaları bunlarla sıkıca birleşmez. – tugberk
@tugberk Cevap hala aynı, aslında; Belirli bir içeriğe bağlı bir şeyiniz varsa ve sonra uyumsuz duruma geçmek istiyorsanız, gerçekten değerleri bağlamdan kopyaladığınızdan emin olun (veya * içeriğe * erişebildiğinizden emin olun) İşlem için gerekenler. – casperOne
sorunu şu: Web API'sinde, neredeyse hiç bağlam yok. Kaynak koduna bakacak olursanız, thread + yoluyla aktarılan değişkenler içindeki bağlam, çerçeve altyapısını her zaman yeniden senkronize etmek için geri dönebilirsiniz. Bu nedenle, cevaplama geçerli değildir. – tugberk