Bảng của tôi có hai cột CreatedBy
và CreateTime
. Trong dạng xem của tôi, tôi không có các trường này. Bây giờ khi tôi cập nhật một bản ghi bằng cách sử dụng phương thức ASP.NET MVC4 Edit (post), các cột này được đặt thành null. Nhưng tôi muốn giữ lại các giá trị. Tôi biết trong phương thức Edit (post) của tôi, tôi có thể lấy bản ghi từ cơ sở dữ liệu và thiết lập các thủ công này theo cách thủ công. Nhưng tôi tự hỏi liệu tôi có thể yêu cầu Entity Framework không thay đổi các giá trị của các trường này hay không.Phương thức chỉnh sửa MVC4 thay đổi giá trị thành null nếu trường correspndong không tồn tại trong biểu mẫu
5
A
Trả lời
1
Bạn phải lựa chọn ở đây:
1) Như @KennyZ đề cập, thêm vào @Html.HiddenFor()
đâu đó trong tầm nhìn của bạn, vào hình thức của bạn:
@Html.HiddenFor(m => m.CreatedBy)
@Html.HiddenFor(m => m.createTime)
2) Bạn có thể tự cập nhật thực thể đó và rời hai thuộc tính đó một mình:
var ent = dbctx.Entities.Find(model.ID);
ent.Prop1 = model.Prop1;
// ... also for other properties except those two property
dbctx.SaveChanges();
3
Không, bạn không thể, nếu bạn muốn giữ các giá trị cũ thì bạn phải lấy bản ghi đầu tiên và sau đó gán giá trị bạn muốn cập nhật theo cách thủ công. Cách duy nhất khác là xem xét thuộc tính thực thể của bạn theo thuộc tính và gắn thẻ mà bạn muốn sửa đổi, như vậy:
db.MyEntity.Attach(myEntity);
db.Entry(myEntity).Property(e => e.MyProperty).IsModified = true;
db.SaveChanges();
hoặc là bạn sẽ phải tự làm công việc thủ công.
0
Chắc chắn bạn có thể. Tôi cho rằng họ đã có trong mô hình của bạn, chỉ cần thêm chúng vào biểu mẫu với Html.HiddenFor(m => m.createdBy)
. Bây giờ họ đang ở trong các hình thức nhưng không được hiển thị, và vẫn có giá trị trên phương pháp Post.
Các vấn đề liên quan
- 1. Sửa đổi giá trị của trường biểu mẫu Django trong suốt()
- 2. MySql: nếu giá trị tồn tại UPDATE khác INSERT
- 3. Đặt giá trị của trường ngày giờ thành null
- 4. Kiểm tra nếu giá trị tồn tại trong Postgres mảng
- 5. Đặt giá trị trường theo phương thức clean() Django Form, nếu trường này không được truyền trong hàm tạo
- 6. Nếu thay đổi giá trị trong mẫu sau khi bưu điện, Mẫu vẫn hiển thị giá trị cũ
- 7. Python: Gán Giá trị nếu Không tồn tại
- 8. MySQL CHỌN một trường là NULL nếu không tồn tại trong bảng
- 9. Nhận giá trị _current_ của một trường trong Trình chỉnh sửa thành phần? (Tridion 2011 SP1)
- 10. Giá trị không đổi trong biểu thức điều kiện
- 11. Jquery nhận giá trị trường biểu mẫu
- 12. Chỉnh sửa giá trị pixel
- 13. if (giá trị == null) vs nếu (null == giá trị)
- 14. Ngăn không cho trình chỉnh sửa ngày tháng của giao diện người dùng jQuery thay đổi giá trị của trường văn bản nếu nằm ngoài phạm vi
- 15. Không thay đổi web.config khi không có giá trị nào tồn tại cho một biến đổi
- 16. Kiểm tra xem các giá trị biểu mẫu web có thay đổi
- 17. Symfony2 - sửa đổi trường biểu mẫu với eventListener
- 18. Giá trị kiểm tra nếu tồn tại trong cột
- 19. Biểu thức dịch vụ báo cáo SQL để đánh giá nếu trường là null & | không gian trắng
- 20. Sửa đổi cột thành NULL - Oracle
- 21. Làm thế nào để thay đổi giá trị trường mẫu trong symfony 2
- 22. Xem nếu trường tồn tại trong lớp
- 23. Kiểm tra Nếu cột đã tồn tại và nếu không thay đổi Bảng trong sqlite
- 24. Cách xóa giá trị trường bằng biểu mẫu Symfony2
- 25. Mongoid - Quản lý mảng? chèn giá trị duy nhất, loại bỏ giá trị nếu tồn tại?
- 26. Chỉ gọi phương thức nếu nó tồn tại
- 27. Tại sao bạn không thể chỉnh sửa và tiếp tục gỡ lỗi khi có biểu thức Lambda trong phương thức?
- 28. Gọi phương thức tùy chỉnh trên giá trị đã thay đổi
- 29. Tôi có thể cho biết biểu mẫu là biểu mẫu 'chỉnh sửa' trong mẫu không?
- 30. Chuyển đổi nhóm phương thức thành Biểu thức