Rumah >pembangunan bahagian belakang >C++ >Bolehkah kaedah pengawal ASP.NET MVC dibebaskan, dan jika tidak, bagaimana saya dapat mencapai hasil yang sama?

Bolehkah kaedah pengawal ASP.NET MVC dibebaskan, dan jika tidak, bagaimana saya dapat mencapai hasil yang sama?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-26 14:21:09743semak imbas

Can ASP.NET MVC Controller Methods Be Overloaded, and If Not, How Can I Achieve a Similar Result?

Asp.net MVC Controller Kaedah Beban Berat dan Skim Alternatif

<:> Soalan:

Asp.net MVC Controller boleh memuat semula kaedah? Mengapa percubaan beban berat saya gagal? Mesej ralat yang saya terima ialah:

"Permintaan semasa operasi" mymethod "pada" jenis pengawal 'mycontroller' tidak jelas antara operasi berikut: "

Jawapan:

Walaupun mesej ralat menunjukkan bahawa kaedah tidak disokong, ciri boleh mencapai kesan yang sama.

Dalam ASP.NET MVC, kaedah ini tidak dibenarkan dimuatkan dalam pengawal yang sama. Walau bagaimanapun, anda boleh menggunakan ciri untuk menentukan nama yang berbeza. Ini membolehkan anda menandatangani kaedah yang berbeza untuk operasi dengan kaedah HTTP yang sama (seperti GET atau POST). [ActionName]

Untuk mensimulasikan kaedah, tambahkan ciri

ke kaedah untuk menamakan semula. Contohnya: [ActionName]

Perlu diperhatikan bahawa penggunaan

bukan kaedah beban berat sebenar. Ia hanya mengubah nama operasi laluan ke kaedah. Oleh itu, anda masih perlu menggunakan nama operasi yang berbeza untuk kaedah HTTP yang sama. [ActionName]

Untuk maklumat lanjut, sila rujuk artikel Phil Haack:
<code class="language-csharp">[ActionName("MyOverloadedName")]
public ActionResult MyMethod(int id)
{
    // 重载方法的代码
}</code>
https://www.php.cn/link/8ab84c57bf23bf8330b47c2db1

[ActionName]

Atas ialah kandungan terperinci Bolehkah kaedah pengawal ASP.NET MVC dibebaskan, dan jika tidak, bagaimana saya dapat mencapai hasil yang sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn