Çalışma alanımda iki çözümüm var, örneğin A ve B.
Çözüm A, bir süre önce kodlamayı bitirdiğim eski bir projedir. Çözüm B'de, Çözüm A'daki bazı sınıfları kullanmam gerekiyor. Bunu yapmak için, çözüm A'daki projelerden birinin dll'sine bir referans ekliyorum.
Sorun, hata ayıklamaya çalıştığım zamandır. Ben de A'nın koduna girebilmek istiyorum. Visual Studio bu sınıflar için kod yükleyemiyor ("Geçerli konum için kaynak kodu yok.") Ve yalnızca demontajı görüntüleyebiliyorum, bu kullanışlı değil.
Çözüm A'daki sınıflarda hata ayıklamanın tek yolu B çözümünü çalıştırmak, tüm işlemleri ayırmak (Hata Ayıklama menü öğesinde) ve işlemi A çözümünden eklemektir.
Ancak, bu çok sakıncalıdır ve bir kerede yalnızca A VEYA B hatalarını ayıklayabilirim.
Başvurulan dll'lerin koduna girmeye izin vermenin bir yolu var mı (bunun için kaynak kodum var)?
Çözüm: Hatam, bir projenin yalnızca tek bir çözümün parçası olabileceğini düşünmemdi. Aslında, bir proje herhangi bir sayıda çözümün parçası olabilir.
Eski projeye başvurmanız gerektiğinde, projeyi çözüme eklemeniz yeterlidir. Bu, Solution Explorer> Add> Existing Project'te yeni çözüme sağ tıklanarak yapılır.
Ardından, proje referansını ekleyebileceksiniz. Başkalarının da yazdığı gibi, muhtemelen kendi kodunuza (veya değiştirmeniz ve hata ayıklamanız gerekebilecek diğer kodlara) dll referanslarını kullanmaktan tamamen kaçınmalısınız.
Çözümlerin nasıl tasarlanması gerektiğine dair çok iyi bir referans MSDN'de bulunabilir .