Beberapa hari yang lalu saya memindahkan solusi saya ke MSVS 2013. Ini berfungsi dengan baik kecuali satu hal: ketika saya mencoba men-debug kode layanan WCF saya, itu berfungsi, tetapi ketika saya ingin melihat status variabel apa pun, ia mengatakan: "Kesalahan internal dalam ekspresi penilai". Tambahkan fungsi jam tangan berfungsi normal di sisi klien, tetapi dalam kode layanan itu rusak. Saya mencoba men-debug layanan WCF saya sendiri yang berjalan di localhost. Bisakah Anda membantu saya, bagaimana cara memperbaikinya?
Berikut info MSVS: Microsoft Visual Studio Professional 2013 Versi 12.0.30110.00 Pembaruan 1 Microsoft .NET Framework Versi 4.5.51641 OS: Windows 8.1
Jawaban:
Ini mungkin bug di mesin debug baru (yang dikelola) yang disertakan dengan Visual Studio 2013. Coba aktifkan Mode Kompatibilitas Terkelola (yang secara efektif mengubahnya menjadi mesin debug pra-2013), yang terletak di Alat - Opsi - Debugging :
Jika ini menyelesaikan masalah, saya sarankan mencoba mereproduksinya dengan proyek kecil, dan kemudian melaporkannya di Connect , sehingga bisa diperbaiki.
@bjhuffine berkomentar di bawah ini bahwa ada cara lain untuk mengaktifkan mode kompatibilitas, tanpa menonaktifkannya secara global (mis. per proyek). Informasi lebih lanjut di sini: https://devblogs.microsoft.com/devops/switching-to-managed-compatibility-mode-in-visual-studio-2013/
sumber
Menurut pertanyaan "Kesalahan internal dalam pengevaluasi ekspresi", 'Gunakan Mode Kompatibilitas yang Dikelola', hentikan "Edit & Lanjutkan". Coba centang opsi "Gunakan penilai ekspresi C # dan VB warisan" di bawah Alat - Opsi - Debugging .
sumber
Saya mencoba jawaban Igal , dan itu tidak berhasil untuk saya, tetapi saya menemukan solusi yang berhasil untuk saya. Saya membersihkan Arloji dan mulai menambahkan item lagi. Saya perhatikan bahwa jika saya mencoba menambahkan item yang tidak ada di dalam sub atau fungsi saat ini, maka terjadi kesalahan internal.
Saya memecahkan masalah dengan menambahkan item lain dari dalam subs atau fungsinya dan tidak ada kesalahan lagi.
sumber
Jawaban Michael Freidgeim membantu saya men-debug masalah saya. Namun saya ingin menambahkan detail tambahan ke penyebab masalah saya. Hanya sedikit terkait dengan pertanyaan penanya, tetapi kesalahannya sangat menyesatkan.
Kami menggunakan kontrol Telerik RadGrid dengan GridDateTimeColumn's. Properti MinDate di grid ini default ke 01/01/1980 jadi jika Anda mengikat tanggal ke kolom ini yang kurang dari itu Anda akan melihat kesalahan ini. Hal yang aneh adalah bahwa penjilidan dan tampilan asli tidak menimbulkan masalah, hanya saat menavigasi ke halaman lain kesalahan itu terjadi.
sumber