مشکل در درج فیلدهای خاص از MetaData
سلام دوستان من برای جدول کاربران سایت فیلدهایی مثل تکرار پسورد و کد امنیتی را توی کلاس metadata الحاق کردم الان مشکلی که دارم
اگه بخوام اطلاعات کاربرم را ویرایش کنم ولیدیشن پسورد و تکرار پسورد و کد امنیتی بهم اجازه نمیده
دوم اینکه تا این فیلدها پر نشن اجازه درج ندارم
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Editprofile(User user)
{
ModelState.Remove("Password");
ModelState.Remove("Username");
ModelState.Remove("ConfirmPassword");
ModelState.Remove("CaptchaInputText");
if (ModelState.IsValid)
{
int id = Convert.ToInt32(RouteData.Values["id"].ToString());
var result = blUser.Find(id);
if (result != null)
{
result.Name = user.Name;
result.Family = user.Family;
result.CodeMeli = user.CodeMeli;
result.Tell = user.Tell;
result.Mobile = user.Mobile;
result.Grade = user.Grade;
result.ConfirmPassword = result.Password;
if (blUser.Update(result))
{
return MessageBox.Show("اطلاعات شما با موفقیت ویرایش شد", MessageType.Success);
}
else
{
return MessageBox.Show("اطلاعات شما با موفقیت ویرایش نشد", MessageType.Error);
}
}
return View(result);
}
else
{
return MessageBox.Show(ModelState.GetErrors(), MessageType.Warning);
}
}
نقل قول: مشکل در درج فیلدهای خاص از MetaData
یعنی نمیدونم چطوری فیلدهای خاصی از جدول رو ویرایش کنم
public bool Update(Medical_Science.Models.DomainModels.User entity, bool autoSave = true)
{
try
{
db.Users.Attach(entity);
db.Entry(entity).State = System.Data.Entity.EntityState.Modified;
if (autoSave)
return Convert.ToBoolean(db.SaveChanges());
else
return false;
}
catch
{
return false;
}
}
اینم ریپوزیتوری ویرایش کاربر
نقل قول: مشکل در درج فیلدهای خاص از MetaData
دوستان کسی نبود راهنماییم کنه:گریه:
نقل قول: مشکل در درج فیلدهای خاص از MetaData
دوستان کارم گیره ممنون میشم راهنمایی کنید کلی هم سرچ زدم به جواب نرسیدم
نقل قول: مشکل در درج فیلدهای خاص از MetaData
سلام
از ViewModel ها استفاده کنید
یعنی یک مدل میسازید که مثلا : Password و ConfirmPassword داخلشه
بعد همون رو Bind میکنید و Validation همونو چک میکنید
بعد هم میذارید داخل مدل دیتابیس و آپدیت میکنید
نقل قول: مشکل در درج فیلدهای خاص از MetaData
MetaData به خود شی جدول وصل نکنید هر صفحه سناریو یه ویو مدل خاص درست کنید.
نقل قول: مشکل در درج فیلدهای خاص از MetaData
ببخشید متوجه نشدم میشه یه مثال بزنید
نقل قول: مشکل در درج فیلدهای خاص از MetaData
دوستان من هنوز مشکلم برطرف نشده با وجود ویو مدل تا همه فیلدها رو پر نکنم اجازه ویرایش نمیده... خواهش میکنم کمکم کنید
نقل قول: مشکل در درج فیلدهای خاص از MetaData
یه همچین چیزی میشه تبدیل ویو مدل و مدل و استفاده کردن ازش بخش کنترلر
public class RegisterViewModel{
[required]
public string username {get;set;}
[required]
public string password {get;set;}
}
var userIdentityModel = new ApplicationUser
{
Username = viewmodel.username ,
Password = viewmodel.password
}
user.GenerateNewUser(userIdentityModel);
db.saveChanges();
اگر ارور دارید موقع ثبت کاربر، نگاه کنید ببینید پروپرتی اجباری چیزی اضافه کردید شاید که البته اررور اش رو میتونید ببینید چیه