Ini telah ditanyakan sebelumnya: Mengapa pemformatan kode Visual Studio tidak berfungsi dengan baik untuk markup Razor?
Tapi pertanyaan itu berumur beberapa tahun. Dan pemformatan Razor masih sepenuhnya tidak dapat diterima. Saya sudah menyerah untuk memperbaikinya.
Dapatkah saya menonaktifkan SEMUA pemformatan Visual Studio untuk file CSHTML? Jika tidak, dapatkah saya menonaktifkan semua format Visual Studio sepenuhnya? Adakah peretasan pihak ketiga yang dapat saya gunakan? Pasti ada sesuatu!
Saya telah meningkatkan ke 2013 dan formatnya sama buruknya.
[EDIT]: 2015 juga sangat buruk. Saya benar-benar berharap mereka akan memperbaikinya.
[EDIT]: 2017 juga sangat mengerikan. Saya benar-benar berharap mereka akan memperbaikinya.
[EDIT]: 2019 juga sangat mengerikan. Saya benar-benar berharap mereka akan memperbaikinya.
Jawaban:
Kamu tidak bisa. Ini dibangun di "fitur" VS sejak versi pertama .net (visual studio 2002/2003).
Ada banyak sekali laporan koneksi tentang bug pemformatan, tetapi Microsoft mengabaikannya sepenuhnya, atau mendorong perbaikan ke "versi berikutnya". Anda dapat melihat contoh jawaban Microsoft di sini .
Anda dapat mengirim umpan balik Anda sendiri ke Tim Microsoft di sini
sumber
Di bawah Alat -> Opsi -> Editor Teks -> HTML -> Lanjutan
ada Tempel item nilai kunci yang mengatakan "Format saat menempel" dan memiliki nilai boolean di sebelahnya. Mengubah ini menjadi salah telah menonaktifkan pemformatan pada tempel untuk saya dalam sintaks pisau cukur.
Saya menggunakan VS Professional 2013, Version 12.0.30110.00 Update 1
sumber
Tempat untuk dicari:
(Memerlukan penginstalan ekstensi Web Essentials)
Setel ke False
Setel ke False
Dengan pengaturan ini saya tidak mengalami masalah dalam Visual Studio 2013.
Saya dulu harus menekan Ctrl-Z terlalu sering, dan jika Anda lupa mengurai kekacauan setelah kode Anda ditulis dan diuji, sangat merepotkan. Saya merasa Microsoft dapat melakukan banyak hal untuk membantu pengguna mengkonfigurasi ini serta membuatnya lebih mudah diakses.
sumber
Apa triknya bagi saya adalah menekan CTRL + Z setelah menempelkan, lalu pemformatan dihapus.
sumber
Dalam kasus saya R # menjadi pelakunya, dapat dinonaktifkan di sini:
ReSharper> Opsi> Pengeditan Kode> Razor> Editor & Pemformatan
https://www.jetbrains.com/help/resharper/2016.1/Reference__Options__Languages__Razor__Editor.html
sumber
Sayangnya, satu-satunya cara untuk mencegah pemformatan otomatis saat menempelkan adalah dengan mengomentari lokasi tempat Anda akan menempelkan beberapa kode baru dan setelah operasi menempelkan untuk menghapus instruksi komentar.
Telusuri & Ganti tampaknya tidak memicu pemformatan otomatis. Tetapi menempelkan memformat ulang seluruh blok kode.
Ini mengerikan di luar kata-kata. Itu membuat Visual Studio IDE hampir tidak dapat digunakan untuk mengedit Razor. Seseorang harus menggunakan editor eksternal untuk file Razor.
Yang lebih buruk lagi, bahkan Visual Studio 2013 Pembaruan 1 terbaru lumpuh saat mengedit tampilan Razor sepanjang waktu.
sumber
Bagian yang menyenangkan adalah, Anda dapat menonaktifkan pemformatan C # dan pemformatan HTML tetapi tidak pemformatan Razor.
Saya telah menghapus centang "Tools> Options> Text Editor> C #> Formatting> Automatically format on paste" dan hal yang sama untuk HTML.
Yang menghasilkan pengalaman menyenangkan berikut dalam file cshtml:
Dan karena tidak ada opsi untuk mengubah opsi Razor, Anda harus hidup dengan ini, saya kira.
"Solusi" saya: tempel dan ctrl-z untuk membatalkan format otomatis
sumber
Saya menemukan pengaturan ini di Resharper 2019, yang telah meningkatkan pengalaman saya:
sumber