Öğretici: Visual Studio kullanarak bir .NET konsol uygulamasında hata ayıklama
Bu öğreticide Visual Studio'da kullanılabilen hata ayıklama araçları tanıtılmaktadır.
Önemli
Tüm klavye kısayolları Visual Studio'dan gelen varsayılan değerleri temel alır. Klavye kısayollarınız farklılık gösterebilir. Daha fazla bilgi için bkz. Visual Studio'da klavye kısayolları.
Önkoşullar
- Bu öğretici, Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Hata ayıklama derleme yapılandırmasını kullanma
Hata Ayıklama ve Sürüm , Visual Studio'nun yerleşik derleme yapılandırmalarıdır. Hata ayıklama için Hata ayıklama derleme yapılandırmasını ve son sürüm dağıtımı için Sürüm yapılandırmasını kullanırsınız.
Hata ayıklama yapılandırmasında, bir program tam sembolik hata ayıklama bilgileriyle derler ve iyileştirme yoktur. Kaynak kodu ve oluşturulan yönergeler arasındaki ilişki daha karmaşık olduğundan iyileştirme hata ayıklamayı karmaşıklaştırır. Bir programın yayın yapılandırması sembolik hata ayıklama bilgilerine sahip değildir ve tamamen iyileştirilmiştir.
Varsayılan olarak, Visual Studio Hata Ayıklama derleme yapılandırmasını kullanır, bu nedenle hata ayıklamadan önce değiştirmeniz gerekmez.
Visual Studio’yu çalıştırın.
Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz projeyi açın.
Geçerli derleme yapılandırması araç çubuğunda gösterilir. Aşağıdaki araç çubuğu görüntüsünde Visual Studio'nun uygulamanın Hata Ayıklama sürümünü derlemek için yapılandırıldığı gösterilmektedir:
Kesme noktası ayarlama
Kesme noktası, kesme noktası içeren satır yürütülmeden önce uygulamanın yürütülmesini geçici olarak kesintiye uğratır.
Satırdaki kod penceresinin sol kenar boşluğuna tıklayarak adı, tarihi ve saati görüntüleyen bir kesme noktası ayarlayın. Sol kenar boşluğu, satır numaralarının solundadır. Kesme noktası ayarlamanın diğer yolları, imleci kod satırına yerleştirmek ve ardından F9 tuşuna basmak veya menü çubuğundan Hata Ayıklama>Geçiş Kesme Noktası'nı seçmektir.
Aşağıdaki görüntüde gösterildiği gibi, Visual Studio kesme noktasının ayarlandığı satırı vurgulayarak ve sol kenar boşluğunda kırmızı bir nokta görüntüleyerek gösterir.
Programı Hata Ayıklama modunda çalıştırmak için F5 tuşuna basın. Hata ayıklamayı başlatmanın bir diğer yolu da menüden Hata Ayıklamayı>Başlat Hata Ayıklamayı Seçmektir.
Program bir ad istediğinizde konsol penceresine bir dize girin ve enter tuşuna basın.
Program yürütmesi, kesme noktasına ulaştığında ve yöntem yürütülmeden önce
Console.WriteLine
durur. Locals penceresi, şu anda yürütülmekte olan yöntemde tanımlanan değişkenlerin değerlerini görüntüler.
Anında penceresini kullanma
Anında penceresi, hata ayıkladığınız uygulamayla etkileşim kurmanızı sağlar. Programınızı nasıl etkilediğini görmek için değişkenlerin değerini etkileşimli olarak değiştirebilirsiniz.
Anlık penceresi görünmüyorsa, Windows>Anında Hatalarını Ayıkla'yı>seçerek bu pencereyi görüntüleyin.
Anlık penceresine girin
name = "Gracie"
ve Enter tuşuna basın.Anlık penceresine girin
currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime()
ve Enter tuşuna basın.Anında penceresinde dize değişkeninin değeri ve değerin DateTime özellikleri görüntülenir. Buna ek olarak, değişkenlerin değerleri Yereller penceresinde güncelleştirilir.
Program yürütmeye devam etmek için F5 tuşuna basın. Devam etmenin bir diğer yolu da menüden Hata Ayıklama>Devamı'nı seçmektir.
Konsol penceresinde görüntülenen değerler, Anlık penceresinde yaptığınız değişikliklere karşılık gelir.
Uygulamadan çıkmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Koşullu kesme noktası ayarlama
Program, kullanıcının girdiği dizeyi görüntüler. Kullanıcı herhangi bir şey girmezse ne olur? Bunu, koşullu kesme noktası olarak adlandırılan yararlı bir hata ayıklama özelliğiyle test edebilirsiniz.
Kesme noktasını temsil eden kırmızı noktaya sağ tıklayın. Bağlam menüsünde Koşullar'ı seçerek Kesme Noktası Ayarları iletişim kutusunu açın. Henüz seçili değilse Koşullar kutusunu seçin.
Koşullu İfade için, 5 olup olmadığını
x
test eden örnek kodu gösteren alana aşağıdaki kodu girin.string.IsNullOrEmpty(name)
String.IsNullOrEmpty(name)
Kesme noktasına her isabet edildiğinde, hata ayıklayıcı yöntemini çağırır
String.IsNullOrEmpty(name)
ve yalnızca yöntem çağrısı döndürdüğündetrue
bu satırda bozulur.Koşullu ifade yerine, bir deyimin belirli bir sayıda yürütülmesinden önce program yürütmesini kesen bir isabet sayısı belirtebilirsiniz. Bir diğer seçenek de, iş parçacığı tanımlayıcısı, işlem adı veya iş parçacığı adı gibi özniteliklere göre program yürütmeyi kesen bir filtre koşulu belirtmektir.
İletişim kutusunu kapatmak için Kapat'ı seçin.
F5 tuşuna basarak programı hata ayıklama ile başlatın.
Konsol penceresinde, adınızı girmeniz istendiğinde Enter tuşuna basın.
Belirttiğiniz koşul (
name
null
veya String.Empty) karşılandığından, program yürütme kesme noktasına ulaştığında ve yöntem yürütülmeden önceConsole.WriteLine
durdurulur.Şu anda yürütülmekte olan yöntemde yerel olan değişkenlerin değerlerini gösteren Locals penceresini seçin. Bu durumda,
Main
şu anda yürütülmekte olan yöntemdir. değişkeninin değerininname
veya String.Emptyolduğunu""
gözlemleyin.Hemen penceresine aşağıdaki deyimi girip Enter tuşuna basarak değerin boş bir dize olduğunu onaylayın. Sonuç olarak elde edilir
true
.? name == String.Empty
? String.IsNullOrEmpty(name)
Soru işareti, ifadeyi değerlendirmek için hemen pencereyi yönlendirir.
Program yürütmeye devam etmek için F5 tuşuna basın.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Kod penceresinin sol kenar boşluğundaki noktaya tıklayarak kesme noktasını temizleyin. Kesme noktasını temizlemenin diğer yolları, F9 tuşuna basmak veya kod satırı seçiliyken Hata Ayıklama > Kesme Noktası GeçişIni Seçmektir.
Bir programda adım adım ilerleyin
Visual Studio ayrıca bir programda satır satır ilerleyip yürütülmesini izlemenizi sağlar. Normalde, bir kesme noktası ayarlar ve program kodunuzun küçük bir bölümünde program akışını izlersiniz. Bu program küçük olduğundan, programın tamamında adım adım ilerleyebilirsiniz.
Hata Ayıklama>Adımı'nı seçin. Bir kerede bir deyimin hatalarını ayıklamanın bir diğer yolu da F11 tuşuna basmaktır.
Visual Studio, sonraki yürütme satırının yanında bir oku vurgular ve görüntüler.
C#
Visual Basic
Bu noktada, Locals penceresi dizinin boş olduğunu ve
name
currentDate
varsayılan değerlere sahip olduğunuargs
gösterir. Ayrıca, Visual Studio boş bir konsol penceresi açtı.F11 tuşuna basın. Visual Studio artık bir sonraki yürütme satırını vurgular. Yerel Ayarlar penceresi değiştirilmez ve konsol penceresi boş kalır.
C#
Visual Basic
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
name
vurgular. Yerel Ayarlar penceresi bunun olduğununame
null
gösterir ve konsol penceresinde "Adınız nedir?" dizesi görüntülenir.Konsol penceresine bir dize girip Enter tuşuna basarak istemi yanıtlar. Konsol yanıt vermiyor ve girdiğiniz dize konsol penceresinde görüntülenmez, ancak Console.ReadLine yöntem yine de girişinizi yakalar.
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
currentDate
vurgular. Locals penceresi, yöntemine Console.ReadLine yapılan çağrı tarafından döndürülen değeri gösterir. Konsol penceresinde, istemde girdiğiniz dize de görüntülenir.F11 tuşuna basın. Locals penceresi, özelliğinden atamadan sonra değişkenin DateTime.Now değerini
currentDate
gösterir. Konsol penceresi değiştirilmez.F11 tuşuna basın. Visual Studio yöntemini çağırır Console.WriteLine(String, Object, Object) . Konsol penceresinde biçimlendirilmiş dize görüntülenir.
Hata Ayıkla>Adım Dışarı'yı seçin. Adım adım yürütmeyi durdurmanın bir diğer yolu da Shift+F11 tuşuna basmaktır.
Konsol penceresinde bir ileti görüntülenir ve bir tuşa basmanızı bekler.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Yayın derleme yapılandırmasını kullanma
Uygulamanızın Hata Ayıklama sürümünü test ettikten sonra Yayın sürümünü de derleyip test etmelisiniz. Yayın sürümü, bazen bir uygulamanın davranışını olumsuz etkileyebilecek derleyici iyileştirmeleri içerir. Örneğin, performansı geliştirmek için tasarlanmış derleyici iyileştirmeleri, çok iş parçacıklı uygulamalarda yarış koşulları oluşturabilir.
Konsol uygulamanızın Yayın sürümünü derlemek ve test etmek için, araç çubuğundaki derleme yapılandırmasını Hata Ayıkla yerine Yayın olarak değiştirin.
F5 tuşuna bastığınızda veya Derleme menüsünden Çözüm Derle'yi seçtiğinizde Visual Studio, uygulamanın Yayın sürümünü derler. Hata ayıklama sürümünü yaptığınız gibi test edebilirsiniz.
Sonraki adımlar
Bu öğreticide Visual Studio hata ayıklama araçlarını kullandınız. Sonraki öğreticide uygulamanın dağıtılabilir bir sürümünü yayımlayacaksınız.
Bu öğreticide Visual Studio'da kullanılabilen hata ayıklama araçları tanıtılmaktadır.
Önemli
Tüm klavye kısayolları Visual Studio'dan gelen varsayılan değerleri temel alır. Klavye kısayollarınız farklılık gösterebilir. Daha fazla bilgi için bkz. Visual Studio'da klavye kısayolları.
Önkoşullar
- Bu öğretici, Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Hata ayıklama derleme yapılandırmasını kullanma
Hata Ayıklama ve Sürüm , Visual Studio'nun yerleşik derleme yapılandırmalarıdır. Hata ayıklama için Hata ayıklama derleme yapılandırmasını ve son sürüm dağıtımı için Sürüm yapılandırmasını kullanırsınız.
Hata ayıklama yapılandırmasında, bir program tam sembolik hata ayıklama bilgileriyle derler ve iyileştirme yoktur. Kaynak kodu ve oluşturulan yönergeler arasındaki ilişki daha karmaşık olduğundan iyileştirme hata ayıklamayı karmaşıklaştırır. Bir programın yayın yapılandırması sembolik hata ayıklama bilgilerine sahip değildir ve tamamen iyileştirilmiştir.
Varsayılan olarak, Visual Studio Hata Ayıklama derleme yapılandırmasını kullanır, bu nedenle hata ayıklamadan önce değiştirmeniz gerekmez.
Visual Studio’yu çalıştırın.
Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz projeyi açın.
Geçerli derleme yapılandırması araç çubuğunda gösterilir. Aşağıdaki araç çubuğu görüntüsünde Visual Studio'nun uygulamanın Hata Ayıklama sürümünü derlemek için yapılandırıldığı gösterilmektedir:
Kesme noktası ayarlama
Kesme noktası, kesme noktası içeren satır yürütülmeden önce uygulamanın yürütülmesini geçici olarak kesintiye uğratır.
Satırdaki kod penceresinin sol kenar boşluğuna tıklayarak adı, tarihi ve saati görüntüleyen bir kesme noktası ayarlayın. Sol kenar boşluğu, satır numaralarının solundadır. Kesme noktası ayarlamanın diğer yolları, imleci kod satırına yerleştirmek ve ardından F9 tuşuna basmak veya menü çubuğundan Hata Ayıklama>Geçiş Kesme Noktası'nı seçmektir.
Aşağıdaki görüntüde gösterildiği gibi, Visual Studio kesme noktasının ayarlandığı satırı vurgulayarak ve sol kenar boşluğunda kırmızı bir nokta görüntüleyerek gösterir.
Programı Hata Ayıklama modunda çalıştırmak için F5 tuşuna basın. Hata ayıklamayı başlatmanın bir diğer yolu da menüden Hata Ayıklamayı>Başlat Hata Ayıklamayı Seçmektir.
Program bir ad istediğinizde konsol penceresine bir dize girin ve enter tuşuna basın.
Program yürütmesi, kesme noktasına ulaştığında ve yöntem yürütülmeden önce
Console.WriteLine
durur. Locals penceresi, şu anda yürütülmekte olan yöntemde tanımlanan değişkenlerin değerlerini görüntüler.
Anında penceresini kullanma
Anında penceresi, hata ayıkladığınız uygulamayla etkileşim kurmanızı sağlar. Programınızı nasıl etkilediğini görmek için değişkenlerin değerini etkileşimli olarak değiştirebilirsiniz.
Anlık penceresi görünmüyorsa, Windows>Anında Hatalarını Ayıkla'yı>seçerek bu pencereyi görüntüleyin.
Anlık penceresine girin
name = "Gracie"
ve Enter tuşuna basın.Anlık penceresine girin
currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime()
ve Enter tuşuna basın.Anında penceresinde dize değişkeninin değeri ve değerin DateTime özellikleri görüntülenir. Buna ek olarak, değişkenlerin değerleri Yereller penceresinde güncelleştirilir.
Program yürütmeye devam etmek için F5 tuşuna basın. Devam etmenin bir diğer yolu da menüden Hata Ayıklama>Devamı'nı seçmektir.
Konsol penceresinde görüntülenen değerler, Anlık penceresinde yaptığınız değişikliklere karşılık gelir.
Uygulamadan çıkmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Koşullu kesme noktası ayarlama
Program, kullanıcının girdiği dizeyi görüntüler. Kullanıcı herhangi bir şey girmezse ne olur? Bunu, koşullu kesme noktası olarak adlandırılan yararlı bir hata ayıklama özelliğiyle test edebilirsiniz.
Kesme noktasını temsil eden kırmızı noktaya sağ tıklayın. Bağlam menüsünde Koşullar'ı seçerek Kesme Noktası Ayarları iletişim kutusunu açın. Henüz seçili değilse Koşullar kutusunu seçin.
Koşullu İfade için, 5 olup olmadığını
x
test eden örnek kodu gösteren alana aşağıdaki kodu girin.string.IsNullOrEmpty(name)
String.IsNullOrEmpty(name)
Kesme noktasına her isabet edildiğinde, hata ayıklayıcı yöntemini çağırır
String.IsNullOrEmpty(name)
ve yalnızca yöntem çağrısı döndürdüğündetrue
bu satırda bozulur.Koşullu ifade yerine, bir deyimin belirli bir sayıda yürütülmesinden önce program yürütmesini kesen bir isabet sayısı belirtebilirsiniz. Bir diğer seçenek de, iş parçacığı tanımlayıcısı, işlem adı veya iş parçacığı adı gibi özniteliklere göre program yürütmeyi kesen bir filtre koşulu belirtmektir.
İletişim kutusunu kapatmak için Kapat'ı seçin.
F5 tuşuna basarak programı hata ayıklama ile başlatın.
Konsol penceresinde, adınızı girmeniz istendiğinde Enter tuşuna basın.
Belirttiğiniz koşul (
name
null
veya String.Empty) karşılandığından, program yürütme kesme noktasına ulaştığında ve yöntem yürütülmeden önceConsole.WriteLine
durdurulur.Şu anda yürütülmekte olan yöntemde yerel olan değişkenlerin değerlerini gösteren Locals penceresini seçin. Bu durumda,
Main
şu anda yürütülmekte olan yöntemdir. değişkeninin değerininname
veya String.Emptyolduğunu""
gözlemleyin.Hemen penceresine aşağıdaki deyimi girip Enter tuşuna basarak değerin boş bir dize olduğunu onaylayın. Sonuç olarak elde edilir
true
.? name == String.Empty
? String.IsNullOrEmpty(name)
Soru işareti, ifadeyi değerlendirmek için hemen pencereyi yönlendirir.
Program yürütmeye devam etmek için F5 tuşuna basın.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Kod penceresinin sol kenar boşluğundaki noktaya tıklayarak kesme noktasını temizleyin. Kesme noktasını temizlemenin diğer yolları, F9 tuşuna basmak veya kod satırı seçiliyken Hata Ayıklama > Kesme Noktası GeçişIni Seçmektir.
Bir programda adım adım ilerleyin
Visual Studio ayrıca bir programda satır satır ilerleyip yürütülmesini izlemenizi sağlar. Normalde, bir kesme noktası ayarlar ve program kodunuzun küçük bir bölümünde program akışını izlersiniz. Bu program küçük olduğundan, programın tamamında adım adım ilerleyebilirsiniz.
Hata Ayıklama>Adımı'nı seçin. Bir kerede bir deyimin hatalarını ayıklamanın bir diğer yolu da F11 tuşuna basmaktır.
Visual Studio, sonraki yürütme satırının yanında bir oku vurgular ve görüntüler.
C#
Visual Basic
Bu noktada, Locals penceresi dizinin boş olduğunu ve
name
currentDate
varsayılan değerlere sahip olduğunuargs
gösterir. Ayrıca, Visual Studio boş bir konsol penceresi açtı.F11 tuşuna basın. Visual Studio artık bir sonraki yürütme satırını vurgular. Yerel Ayarlar penceresi değiştirilmez ve konsol penceresi boş kalır.
C#
Visual Basic
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
name
vurgular. Yerel Ayarlar penceresi bunun olduğununame
null
gösterir ve konsol penceresinde "Adınız nedir?" dizesi görüntülenir.Konsol penceresine bir dize girip Enter tuşuna basarak istemi yanıtlar. Konsol yanıt vermiyor ve girdiğiniz dize konsol penceresinde görüntülenmez, ancak Console.ReadLine yöntem yine de girişinizi yakalar.
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
currentDate
vurgular. Locals penceresi, yöntemine Console.ReadLine yapılan çağrı tarafından döndürülen değeri gösterir. Konsol penceresinde, istemde girdiğiniz dize de görüntülenir.F11 tuşuna basın. Locals penceresi, özelliğinden atamadan sonra değişkenin DateTime.Now değerini
currentDate
gösterir. Konsol penceresi değiştirilmez.F11 tuşuna basın. Visual Studio yöntemini çağırır Console.WriteLine(String, Object, Object) . Konsol penceresinde biçimlendirilmiş dize görüntülenir.
Hata Ayıkla>Adım Dışarı'yı seçin. Adım adım yürütmeyi durdurmanın bir diğer yolu da Shift+F11 tuşuna basmaktır.
Konsol penceresinde bir ileti görüntülenir ve bir tuşa basmanızı bekler.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Yayın derleme yapılandırmasını kullanma
Uygulamanızın Hata Ayıklama sürümünü test ettikten sonra Yayın sürümünü de derleyip test etmelisiniz. Yayın sürümü, bazen bir uygulamanın davranışını olumsuz etkileyebilecek derleyici iyileştirmeleri içerir. Örneğin, performansı geliştirmek için tasarlanmış derleyici iyileştirmeleri, çok iş parçacıklı uygulamalarda yarış koşulları oluşturabilir.
Konsol uygulamanızın Yayın sürümünü derlemek ve test etmek için, araç çubuğundaki derleme yapılandırmasını Hata Ayıkla yerine Yayın olarak değiştirin.
F5 tuşuna bastığınızda veya Derleme menüsünden Çözüm Derle'yi seçtiğinizde Visual Studio, uygulamanın Yayın sürümünü derler. Hata ayıklama sürümünü yaptığınız gibi test edebilirsiniz.
Sonraki adımlar
Bu öğreticide Visual Studio hata ayıklama araçlarını kullandınız. Sonraki öğreticide uygulamanın dağıtılabilir bir sürümünü yayımlayacaksınız.
Bu öğreticide Visual Studio'da kullanılabilen hata ayıklama araçları tanıtılmaktadır.
Önkoşullar
- Bu öğretici, Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Hata ayıklama derleme yapılandırmasını kullanma
Hata Ayıklama ve Sürüm , Visual Studio'nun yerleşik derleme yapılandırmalarıdır. Hata ayıklama için Hata ayıklama derleme yapılandırmasını ve son sürüm dağıtımı için Sürüm yapılandırmasını kullanırsınız.
Hata ayıklama yapılandırmasında, bir program tam sembolik hata ayıklama bilgileriyle derler ve iyileştirme yoktur. Kaynak kodu ve oluşturulan yönergeler arasındaki ilişki daha karmaşık olduğundan iyileştirme hata ayıklamayı karmaşıklaştırır. Bir programın yayın yapılandırması sembolik hata ayıklama bilgilerine sahip değildir ve tamamen iyileştirilmiştir.
Varsayılan olarak, Visual Studio Hata Ayıklama derleme yapılandırmasını kullanır, bu nedenle hata ayıklamadan önce değiştirmeniz gerekmez.
Visual Studio’yu çalıştırın.
Visual Studio kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz projeyi açın.
Geçerli derleme yapılandırması araç çubuğunda gösterilir. Aşağıdaki araç çubuğu görüntüsünde Visual Studio'nun uygulamanın Hata Ayıklama sürümünü derlemek için yapılandırıldığı gösterilmektedir:
Kesme noktası ayarlama
Kesme noktası, kesme noktası içeren satır yürütülmeden önce uygulamanın yürütülmesini geçici olarak kesintiye uğratır.
Satırdaki kod penceresinin sol kenar boşluğuna tıklayarak adı, tarihi ve saati görüntüleyen bir kesme noktası ayarlayın. Sol kenar boşluğu, satır numaralarının solundadır. Kesme noktası ayarlamanın diğer yolları, imleci kod satırına yerleştirmek ve ardından F9 tuşuna basmak veya menü çubuğundan Hata Ayıklama>Geçiş Kesme Noktası'nı seçmektir.
Aşağıdaki görüntüde gösterildiği gibi, Visual Studio kesme noktasının ayarlandığı satırı vurgulayarak ve sol kenar boşluğunda kırmızı bir nokta görüntüleyerek gösterir.
Programı Hata Ayıklama modunda çalıştırmak için F5 tuşuna basın. Hata ayıklamayı başlatmanın bir diğer yolu da menüden Hata Ayıklamayı>Başlat Hata Ayıklamayı Seçmektir.
Program bir ad istediğinizde konsol penceresine bir dize girin ve enter tuşuna basın.
Program yürütmesi, kesme noktasına ulaştığında ve yöntem yürütülmeden önce
Console.WriteLine
durur. Locals penceresi, şu anda yürütülmekte olan yöntemde tanımlanan değişkenlerin değerlerini görüntüler.
Anında penceresini kullanma
Anında penceresi, hata ayıkladığınız uygulamayla etkileşim kurmanızı sağlar. Programınızı nasıl etkilediğini görmek için değişkenlerin değerini etkileşimli olarak değiştirebilirsiniz.
Anlık penceresi görünmüyorsa, Windows>Anında Hatalarını Ayıkla'yı>seçerek bu pencereyi görüntüleyin.
Anlık penceresine girin
name = "Gracie"
ve Enter tuşuna basın.Anlık penceresine girin
currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime()
ve Enter tuşuna basın.Anında penceresinde dize değişkeninin değeri ve değerin DateTime özellikleri görüntülenir. Buna ek olarak, değişkenlerin değerleri Yereller penceresinde güncelleştirilir.
Program yürütmeye devam etmek için F5 tuşuna basın. Devam etmenin bir diğer yolu da menüden Hata Ayıklama>Devamı'nı seçmektir.
Konsol penceresinde görüntülenen değerler, Anlık penceresinde yaptığınız değişikliklere karşılık gelir.
Uygulamadan çıkmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Koşullu kesme noktası ayarlama
Program, kullanıcının girdiği dizeyi görüntüler. Kullanıcı herhangi bir şey girmezse ne olur? Bunu, koşullu kesme noktası olarak adlandırılan yararlı bir hata ayıklama özelliğiyle test edebilirsiniz.
Kesme noktasını temsil eden kırmızı noktaya sağ tıklayın. Bağlam menüsünde Koşullar'ı seçerek Kesme Noktası Ayarları iletişim kutusunu açın. Henüz seçili değilse Koşullar kutusunu seçin.
Koşullu İfade için, 5 olup olmadığını
x
test eden örnek kodu gösteren alana aşağıdaki kodu girin.String.IsNullOrEmpty(name)
String.IsNullOrEmpty(name)
Kesme noktasına her isabet edildiğinde, hata ayıklayıcı yöntemini çağırır
String.IsNullOrEmpty(name)
ve yalnızca yöntem çağrısı döndürdüğündetrue
bu satırda bozulur.Koşullu ifade yerine, bir deyimin belirli bir sayıda yürütülmesinden önce program yürütmesini kesen bir isabet sayısı belirtebilirsiniz. Bir diğer seçenek de, iş parçacığı tanımlayıcısı, işlem adı veya iş parçacığı adı gibi özniteliklere göre program yürütmeyi kesen bir filtre koşulu belirtmektir.
İletişim kutusunu kapatmak için Kapat'ı seçin.
F5 tuşuna basarak programı hata ayıklama ile başlatın.
Konsol penceresinde, adınızı girmeniz istendiğinde Enter tuşuna basın.
Belirttiğiniz koşul (
name
null
veya String.Empty) karşılandığından, program yürütme kesme noktasına ulaştığında ve yöntem yürütülmeden önceConsole.WriteLine
durdurulur.Şu anda yürütülmekte olan yöntemde yerel olan değişkenlerin değerlerini gösteren Locals penceresini seçin. Bu durumda,
Main
şu anda yürütülmekte olan yöntemdir. değişkeninin değerininname
veya String.Emptyolduğunu""
gözlemleyin.Hemen penceresine aşağıdaki deyimi girip Enter tuşuna basarak değerin boş bir dize olduğunu onaylayın. Sonuç olarak elde edilir
true
.? name == String.Empty
? String.IsNullOrEmpty(name)
Soru işareti, ifadeyi değerlendirmek için hemen pencereyi yönlendirir.
Program yürütmeye devam etmek için F5 tuşuna basın.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Kod penceresinin sol kenar boşluğundaki noktaya tıklayarak kesme noktasını temizleyin. Kesme noktasını temizlemenin diğer yolları, F9 tuşuna basmak veya kod satırı seçiliyken Hata Ayıklama > Kesme Noktası GeçişIni Seçmektir.
Bir programda adım adım ilerleyin
Visual Studio ayrıca bir programda satır satır ilerleyip yürütülmesini izlemenizi sağlar. Normalde, bir kesme noktası ayarlar ve program kodunuzun küçük bir bölümünde program akışını izlersiniz. Bu program küçük olduğundan, programın tamamında adım adım ilerleyebilirsiniz. Şu anda hata ayıklama olmasa da, odak Visual Studio'dadır:
Hata Ayıklama>Adımı'nı seçin. Bir kerede bir deyimin hatalarını ayıklamanın bir diğer yolu da F11 tuşuna basmaktır.
Visual Studio, sonraki yürütme satırının yanında bir oku vurgular ve görüntüler.
C#
Visual Basic
Bu noktada, Locals penceresi dizinin boş olduğunu ve
name
currentDate
varsayılan değerlere sahip olduğunuargs
gösterir. Ayrıca, Visual Studio boş bir konsol penceresi açtı.F11 tuşuna basın. Visual Studio artık bir sonraki yürütme satırını vurgular. Yerel Ayarlar penceresi değiştirilmez ve konsol penceresi boş kalır.
C#
Visual Basic
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
name
vurgular. Yerel Ayarlar penceresi bunun olduğununame
null
gösterir ve konsol penceresinde "Adınız nedir?" dizesi görüntülenir.Konsol penceresine bir dize girip Enter tuşuna basarak istemi yanıtlar. Konsol yanıt vermiyor ve girdiğiniz dize konsol penceresinde görüntülenmez, ancak Console.ReadLine yöntem yine de girişinizi yakalar.
F11 tuşuna basın. Visual Studio, değişken atamasını içeren deyimini
currentDate
vurgular. Locals penceresi, yöntemine Console.ReadLine yapılan çağrı tarafından döndürülen değeri gösterir. Konsol penceresinde, istemde girdiğiniz dize de görüntülenir.F11 tuşuna basın. Locals penceresi, özelliğinden atamadan sonra değişkenin DateTime.Now değerini
currentDate
gösterir. Konsol penceresi değiştirilmez.F11 tuşuna basın. Visual Studio yöntemini çağırır Console.WriteLine(String, Object, Object) . Konsol penceresinde biçimlendirilmiş dize görüntülenir.
Hata Ayıkla>Adım Dışarı'yı seçin. Adım adım yürütmeyi durdurmanın bir diğer yolu da Shift+F11 tuşuna basmaktır.
Konsol penceresinde bir ileti görüntülenir ve bir tuşa basmanızı bekler.
Konsol penceresini kapatmak ve hata ayıklamayı durdurmak için herhangi bir tuşa basın.
Yayın derleme yapılandırmasını kullanma
Uygulamanızın Hata Ayıklama sürümünü test ettikten sonra Yayın sürümünü de derleyip test etmelisiniz. Yayın sürümü, bazen bir uygulamanın davranışını olumsuz etkileyebilecek derleyici iyileştirmeleri içerir. Örneğin, performansı geliştirmek için tasarlanmış derleyici iyileştirmeleri, çok iş parçacıklı uygulamalarda yarış koşulları oluşturabilir.
Konsol uygulamanızın Yayın sürümünü derlemek ve test etmek için, araç çubuğundaki derleme yapılandırmasını Hata Ayıkla yerine Yayın olarak değiştirin.
F5 tuşuna bastığınızda veya Derleme menüsünden Çözüm Derle'yi seçtiğinizde Visual Studio, uygulamanın Yayın sürümünü derler. Hata ayıklama sürümünü yaptığınız gibi test edebilirsiniz.
Sonraki adımlar
Bu öğreticide Visual Studio hata ayıklama araçlarını kullandınız. Sonraki öğreticide uygulamanın dağıtılabilir bir sürümünü yayımlayacaksınız.