MVC'de bir modelim ve bir actionMethod var; Create()
eylem günüASP.NET MVC Uzaktan Doğrulama mantığı Düzenle on
public class employee
{
[Key]
public int id { get; set; }
[Required]
public string employeeID { get; set; }
[Required]
[Remote("doesCnicExist", "employee", AdditionalFields = "employeeID", HttpMethod = "POST", ErrorMessage = "A user with this cnic already exists. Please enter a different cnic.")]
public string cnic { get; set; }
}
[HttpPost]
public JsonResult doesCnicExist(string employeeID, string cnic)
{
var empList = hc.employee.ToList();
bool flag = false;
foreach (employee e in empList)
{
if ((employeeID == e.employeeID) && (cnic == e.cnic))
{
flag = true;
}
}
return Json(flag == false);
}
, harika çalışıyor. Ancak, Edit()
eyleminde, program zaten var cnic
görür. Ve employee
'u aynı cnic
ile güncelleyemiyorum. Düzenleme sırasında çalışan nesnesinin benzersizliğini elde etmek için ek employeeID
alanını nasıl kullanabileceğimi anlayamıyorum? id
yana
"int id" ile "string employeeID" arasındaki fark nedir? Ve denediniz 'doCnicExist()' yöntemini göstermeniz gerekir. –
@StephenMuecke 'int id', tablo için veritabanı tarafından otomatikleştirilir ve 'Çalışan Kimliği' kuruluş tarafından atanır. Üzgünüm, bu durum için olası bir mantık hakkında tamamen düşünemedim - 'doCnicExist()' için. Bu yüzden bu soruyu sordum. – Jogi
Ama 'Create() 'eyleminiz için çalıştığını söylediniz. Öyleyse göster ve daha sonra 'Edit()' yöntemi için çalışmak düzeltilebilir. (Bu id 've' çalışanID 'alanları kadar gitmek, 2 tanımlayıcı alanlara sahip noktası nedir? - Bu anahtarın bu yana" Eklentiler "de' id 'alanını kullanmalısınız) –