Dalam panggilan AJAX saya, saya ingin mengembalikan nilai string kembali ke halaman panggilan.
Haruskah saya menggunakan ActionResult
atau mengembalikan string?
asp.net-mvc
ajax
actionresult
pengguna67033
sumber
sumber
Jawaban:
Anda bisa menggunakan
ContentResult
untuk mengembalikan string:ContentResult
secara default mengembalikan atext/plain
sebagai contentType . Ini kelebihan beban sehingga Anda juga dapat melakukan:sumber
ContentResult
tidakif (!String.IsNullOrEmpty(ContentType))
sebelum pengaturanHttpContext.Response.ContentType
. Saya melihattext/html
dengan contoh pertama Anda, apakah itu default sekarang atau itu merupakan tebakan terpelajar olehHttpContext
.MediaTypeNames.Text.Plain
atauMediaTypeNames.Text.Xml
. Meskipun hanya mencakup beberapa jenis MIME yang paling banyak digunakan. ( docs.microsoft.com/en-us/dotnet/api/… )Anda juga bisa mengembalikan string jika Anda tahu bahwa satu-satunya metode yang akan kembali. Sebagai contoh:
sumber
return
pernyataan yang digunakan untuk mengirim salah satustring
atauJSON
atauView
berdasarkan kondisi maka kita harus menggunakanContent
untuk mengembalikan string.sumber
sumber
Pada tahun 2020, penggunaan
ContentResult
masih merupakan pendekatan yang tepat seperti yang diusulkan di atas , tetapi penggunaannya adalah sebagai berikut:sumber
ada 2 cara untuk mengembalikan string dari controller ke view
pertama
kedua
di sini adalah contoh kode untuk melakukan ini
dalam pandangan file untuk menjalankan AutoProperty itu akan mengarahkan Anda ke Hasil pandangan dan akan mengirimkan s
kode ke tampilan
sumber