Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mengendalikan pelbagai butang hantar dalam borang ASP.NET MVC?
<code>(此处应插入包含两个提交按钮的表单HTML代码示例)</code>Secara amnya, apabila memproses borang dalam ASP.NET MVC, rangka kerja bergantung pada nama butang untuk menentukan kaedah operasi yang berkaitan untuk dilaksanakan. Walau bagaimanapun, dalam hal berbilang butang di atas, kaedah ini akan menjadi rumit.
Untuk menyelesaikan masalah ini, artikel ini mencadangkan atribut tersuai yang dipanggil
. Atribut ini digunakan untuk memintas proses pemprosesan operasi dan menilai sama ada permintaan yang diperkenalkan diperolehi dari butang penyerahan tertentu. Jika anda mencari item yang sepadan, kenal pasti dan hubungi kaedah operasi yang sepadan. MultipleButtonAttribute
<code class="language-csharp">[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)] public class MultipleButtonAttribute : ActionNameSelectorAttribute { public string Name { get; set; } public string Argument { get; set; } public override bool IsValidName(ControllerContext controllerContext, string actionName, MethodInfo methodInfo) { bool isValidName = false; string keyValue = string.Format("{0}:{1}", Name, Argument); ValueProviderResult value = controllerContext.Controller.ValueProvider.GetValue(keyValue); if (value != null) { controllerContext.Controller.ControllerContext.RouteData.Values[Name] = Argument; isValidName = true; } return isValidName; } }</code>Terima dua parameter:
dan MultipleButtonAttribute
. Name
Atribut digunakan untuk mengenal pasti nama butang hantar, dan atribut Argument
mewakili nilai yang berkaitan dengan butang. Name
Argument
Untuk menggunakan , kod HTML borang harus diubahsuai untuk mengandungi nama atribut dan nilai parameter. Contohnya:
Dalam pengawal, kaedah operasi yang sepadan harus dihiasi dengan MultipleButtonAttribute
, dan nilai
<code>(此处应插入修改后的包含属性的表单HTML代码示例)</code>yang betul:
MultipleButtonAttribute
Name
Menggunakan kaedah ini, rangka kerja MVC ASP.NET kini boleh memetakan dengan tepat penyerahan kepada kaedah operasi yang sesuai, untuk mengendalikan butang penyerahan dengan betul dalam bentuk yang sama. Argument
Atas ialah kandungan terperinci Bagaimana untuk mengendalikan pelbagai butang hantar dalam borang ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!