.net core 使用Razor页面和实体框架核心以及ViewModel限制可编辑的字段
用户类.net core 使用Razor页面和实体框架核心以及ViewModel限制可编辑的字段,.net-core,entity-framework-core,razor-pages,.net Core,Entity Framework Core,Razor Pages,用户类 public class MyUser { public string Forename { get; set; } public string Surname { get; set; } public string PWD { get; set; } } 密码编辑页 public class EditPasswordModel : PageModel { [BindProperty] public UserMain o
public class MyUser {
public string Forename { get; set; }
public string Surname { get; set; }
public string PWD { get; set; }
}
密码编辑页
public class EditPasswordModel : PageModel {
[BindProperty]
public UserMain objRecord { get; set; }
public async Task<IActionResult> OnGetAsync() {
objRecord = await _context.MyUser
.SingleOrDefaultAsync(m => m.UserID == 666);
return Page();
}
public async Task<IActionResult> OnPostAsync() {
_context.Attach(objRecord).State = EntityState.Modified;
await _context.SaveChangesAsync();
return RedirectToPage("./Index");
}
}
公共类EditPasswordModel:PageModel{
[BindProperty]
public UserMain对象记录{get;set;}
公共异步任务OnGetAsync(){
objRecord=await\u context.MyUser
.SingleOrDefaultAsync(m=>m.UserID==666);
返回页();
}
公共异步任务OnPostAsync(){
_Attach(objRecord).State=EntityState.Modified;
wait_context.SaveChangesAsync();
返回页首(“/索引”);
}
}
在这个密码更改页面中,我只想更新PWD
字段。
从OnPostAsync()
中的表中重新加载记录,然后将除PWD
之外的所有内容复制到objRecord中的选项起作用,但感觉是错误的和浪费的
我已经使用ViewModels来扩展视图中的内容,例如组合视图中要使用的类,但是有没有办法使用ViewModel来限制哪些字段可用