Proses berbilang butang penyerahan dalam asp.net mvc
<code>(此处应插入包含两个提交按钮的表单HTML代码示例)</code>
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
[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; } }
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>
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!