Debug
.WriteLine()
vs Console
.WriteLine()
arasındaki fark nedir?Console.WriteLine() vs Debug.WriteLine() arasındaki fark nedir?
cevap
Console.WriteLine debug veya serbest halinde, standart çıktı akımına yazar. Debug.WriteLine, Listeners koleksiyonundaki izleme dinleyicilerine yalnızca ayıklamada çalışırken yazıyor. Uygulama, sürüm yapılandırmasında derlendiğinde, Hata Ayıklama öğeleri kodda derlenmeyecektir. Debug.WriteLine
Listeners koleksiyonundaki tüm iz dinleyicilere yazdığı gibi
, (bir dinleyici kaydeder birden fazla yerde çıkışı (Visual Studio çıkış penceresi Konsol, Log dosyası, üçüncü taraf uygulama olabileceğini mümkündür Ben DebugView bunu yapar, vb.).
Console.WriteLine()
konsol modu programlar için tasarlanmıştır. Visual Studio barındırma işleminin güzel bir özelliği, bir konsolu olmayan işlemler için hata ayıklama yaparken, çıktılarını Visual Studio Çıkış penceresinde görüntülemesini sağlar. Hata ayıklama yaparken çok kullanışlıdır, ancak Sürüm oluşturmayı hazır olduğunuzda bu kodu kaldırmanız gerektiğine dikkat edin (veya bir #ifdef DEBUG
ile sarın). Aksi takdirde programınıza gereksiz ek yükler ekleyecektir. Bu, hata ayıklama takibi için idealden daha az yapar. DEBUG
koşullu #defined ile oluşturursanız, izleme bilgilerini oluşturur. Debug yapısında varsayılan olarak açıktır. Çıkış bittiğinde, app.exe.config
dosyasında yapılandırılabilir. Bu yapılandırma geçersiz kılmazsa, .NET otomatik olarak DefaultTraceListener
sınıfının bir örneğini sağlar. Hata ayıklayıcısına Windows OutputDebugString()
API işleviyle Debug.WriteLine()
metnini gönderir. Visual Studio hata ayıklayıcısını, Console.WriteLine()
gibi, Çıkış penceresinde görünen yapar.
Debug.WriteLine()
açık bir avantajı, Yayın yapısında hiçbir yükü oluşturur, yani çağrı etkili bir şekilde çıkarılır. Ancak, bileşik biçimlendirmeyi desteklemez, bunun için String.Format()
gerekir. Hata ayıklama izleme için, Debug sınıfı sizin tercihiniz olmalıdır.
Console.WriteLine kullanma amacınız yalnızca hata ayıklama amaçlıysa, daha iyi Debug.WriteLine kullanın. Eğer kullanıcıya mesaj göstermek isterseniz
, sen Console.WriteLine kullanırsınız.
Debug.WriteLine yalnızca uygulama hata giderme amaçlıdır. 'da yayın modu, hata ayıklama ifadeleriniz dikkate alınmaz.
Konsol uygulamasının başka bir kullanımı özel montajları test etmektir. DLL derlenmiş sürümünü sınamak için bir çeşit GUI sınama derlemesinin geleneksel yaklaşımından ziyade, bir konsol uygulaması olarak DLL dosyasını yeniden yapılandırabilir ve konsola giriş/çıkış yapabilirsiniz. Bu tekniği bir GUI test demeti oluşturmak için harcadığınız zamandan daha hızlı buldum.
"Kullanıcıya bir mesaj göstermek istiyorsanız, konsol.writeline adresini kullanırsınız."Bu, bazı insanları karıştırırdı çünkü bir konsol uygulamasında çalıştırılıyorsa kullanıcıya bir şey gösterecektir. –
- 1. log4net Günlüğe kaydetme Debug.WriteLine ve Console.WriteLine
- 2. Python vs Jython vs IronPython vs wxPython arasındaki fark nedir?
- 3. db_owner vs. db_datareader/db_datawriter arasındaki fark nedir?
- 4. .GetAwaiter() vs .Wait() arasındaki fark nedir. GetResult()?
- 5. Debug.WriteLine(), Console.WriteLine() öğesine karşı kültürü farklı şekilde işler. Niye ya?
- 6. Fark() arasındaki fark nedir mustache.js
- 7. arasındaki fark nedir?
- 8. Java arasındaki fark nedir
- 9. arasındaki fark nedir?
- 10. arasındaki fark nedir?
- 11. arasındaki fark django.test.TestCase vs unittest vs django.utils.unittest.TestCase
- 12. arasındaki fark?
- 13. Django ve Joomla arasındaki fark nedir?
- 14. C++ vs C# statik değişkeni arasındaki fark nedir?
- 15. Android: HashMap gibi Bundle Vs java.util koleksiyonları arasındaki fark nedir?
- 16. SpecialFolder.Desktop ve SpecialFolder.DesktopDirectory arasındaki fark nedir?
- 17. webpack "--watch" vs "--hot": Fark nedir?
- 18. GWT VS Google Closure, fark nedir?
- 19. AppDomain.CreateInstance ve Activator.CreateInstance arasındaki fark nedir?
- 20. arasındaki fark nedir [[test1 && dnm2]] vs [[test1]] && [[dnm2]], aşağıdaki iki bash değerlendirmelerde fark, varsa, nedir
- 21. WIX'de Media ve MediaTemplate arasındaki fark nedir?
- 22. javax.ws.rs.core.Cookie vs javax.ws.rs.core.NewCookie, Fark nedir?
- 23. Smalltalk'taki fark ile Smalltalk arasındaki fark nedir?
- 24. = ile mysql arasındaki fark nedir?
- 25. Python'da {} ve [] arasındaki fark nedir?
- 26. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 27. window.innerWidth window.outerWidth arasındaki fark nedir?
- 28. UTF kodlamaları arasındaki fark nedir?
- 29. $ arasındaki fark nedir? ve PowerShell
- 30. Bu işlevler arasındaki fark nedir?
Kesin DebugView doğal Windows API çağrısı 'OutputDebugString' (ve' DebugPrint') üzerinden açmış mesajları izler. 'DefaultTraceListener', 'OutputDebugString' yazıyor, bu yüzden DebugView çıktıyı görüyor. http://msdn.microsoft.com/en-us/library/system.diagnostics.defaulttracelistener.aspx – MarkJ