I have 3 fields: urlName , displayName and active . This is a validation of an edit entry. Here I want to check that urlName is unique in Db, but at the same time, if the user has already saved Url, but changed displayName and active , then the record should be updated.
Someone will tell me how to solve this.
public bool NothingExceptUrlNameExists(string urlName, string displayName, bool active) { return (from p in _db.SubMenus where p.UrlName == urlName && (p.DisplayName != displayName || p.DisplayName == displayName) && (p.Active != active || p.Active == active) select p).Any(); }
record update for example
TryUpdateModel(existingMenu); _menu.Add();
This is what I want to achieve.
My other 2 values ββshould be added to Query DisplayName and Active. Suppose that "Contact" UrlName is already in the database. I load the values ββfrom the drop-down list that returns UrlName = "About", DisplayName = "About Us", Active = true. Now edit the record. Here is the condition for compliance.
1 - UrlName = "About", DisplayName = "About testing", Active = true β This should be updated.
2 - UrlName = "About", DisplayName = "About Us", Active = false β This should be updated.
3 - UrlName = "", DisplayName = "About testing", Active = false β This should be updated.
Important: 4 - UrlName = "newnotexist", DisplayName = "About testing", Active = false β This should update UrlName and rest if they are changed.
5 - UrlName = "Contact", DisplayName = "About Test", Active = false β This should not update and generate an error.
I hope you understand what I want to do.