Örneğin, "geçerli kullanıcıyı" Oturumda saklıyorum. İş katmanı nesnesi, Unity tarafından başlatılıyor. İşletme katmanı nesnesini "geçerli kullanıcının" farkında olma özelliğini nasıl yaparım?Unity tarafından sağlanan nesneye HTTP İsteğine özel bir nesneyi nasıl enjekte edebilirim?
6
A
cevap
13
Bir soyutlama arkasında "geçerli kullanıcı" gizlemek gerekir:
public interface ICurrentUser
{
string Name { get; }
}
Bu soyutlama iş katmanında tanımlı ve size Composition Root verdiğiniz bir ASP.NET özel uygulama oluşturmak için gereken edilmelidir: Şimdi
public class AspNetCurrentUser : ICurrentUser
{
public string Name
{
get { return HttpContext.Current.Session["user"]; }
}
}
iş katmanlı nesne ICurrentUser
arayüzünde bağlı olabilir ve aşağıdaki gibi Unity size uygulanmasını kayıt olabilirsiniz:
container.RegisterType<ICurrentUser, AspNetCurrentUser>();
İlgili konular
- 1. Nasıl özel bir nesneye
- 2. Scons'ta, oluşturulacak bir hedefi nasıl enjekte edebilirim?
- 3. Nesneyi başka bir nesneye kopyalama
- 4. Açısal2 konumuna nasıl enjekte edebilirim?
- 5. HTTP Okuma özel başlık istemek
- 6. Sağlayıcı bileşeni nasıl enjekte edebilirim?
- 7. Sistem tarafından sağlanan Java
- 8. cURL komutunu HTTP isteğine dönüştürme
- 9. Bir nesneyi Hançer 2 ile Android Priority Job Queue içine nasıl enjekte edebilirim?
- 10. Yuvalanmış nesneyi dış nesneye nasıl geçiririm?
- 11. Özel bir hizmeti başka bir özel hizmete nasıl enjekte edersiniz?
- 12. Şablon tarafından sağlanan bir temel sınıfın uyarlanması
- 13. java.lang.IncompatibleClassChangeError tarafından sağlanan ActivityTestRule örneği
- 14. Tek bir HTTP İsteğine birden çok HTTP Yanıtı gönderme .NET'de
- 15. GridView öğesini özel bir nesneye nasıl bağlarım?
- 16. İzolatı direktifin içine nasıl enjekte edebilirim?
- 17. ServiceStack AuthSession'ı depo sınıflarıma nasıl enjekte edebilirim?
- 18. Bir filtre için birim testine alay hizmetini nasıl enjekte edebilirim?
- 19. Dahili sunucudan HTTP isteğine dosya aktarımı
- 20. System.arrayCopy() nesneyi veya nesneye başvuru kopyalar mı?
- 21. Python 2.7.1'i Apple tarafından sağlanan Python
- 22. Kodu nasıl yüklerim ve yüklü bir aksamına enjekte edebilirim?
- 23. Bir Spring bağımlılığını kimliğe göre nasıl enjekte edebilirim?
- 24. Selenium bir nesneyi sınıf tarafından seç
- 25. Varlık Veri Modeli tarafından oluşturulan bir nesneye nasıl eşitlenir?
- 26. 2.0 Açısal - Enjekte Http servis
- 27. Ubuntu tarafından sağlanan Crypto ++ ile derleme
- 28. MAMP tarafından sağlanan php.ini dosyalarındaki değişiklikler,
- 29. Zend: PHP 7'de özel bir nesneyi doğru şekilde nasıl yok edebilirim?
- 30. Bir mücevher tarafından sağlanan bir ActiveRecord modelini yeniden açın
Herhangi bir statik özellik kullanmadan bunu yapmak zaten var mı? Temel olarak, HttpRequestContext veya Denetleyicinin kendisine dayandırmak istersem, bunu nasıl yaparım? –
@CharlesPrakashDasari: Yeni bir soru sorun [burada] (https://stackoverflow.com/questions/ask) ve bu soruya bir yanıt olarak bu soruya bir bağlantı gönderin. – Steven