Tôi đang gặp khó khăn để tìm ra NH ngoại lệ:Cập nhật hàng loạt trả về số hàng không mong đợi từ bản cập nhật; số hàng thực tế: 0; mong đợi: 1
cập nhật hàng loạt trở lại đếm hàng bất ngờ từ cập nhật; hàng thực tế đếm: 0; mong đợi: 1
My Dal mã:
public T Save(T item)
{
using (ISession session = NHibernateHelper.GetSession())
{
using (var transaction = session.BeginTransaction())
{
session.SaveOrUpdate(item);
transaction.Commit();
return item;
}
}
}
log4net My file:
lệnh 0: UPDATE Metadata_FriendDetails SET UserId = @ p0, Email = @ p1, Tên = @ p2 WHERE FriendId = @ p3; @ p0 = a358ab9d-d481-4bdd-8cb2-18ddc8898c70 [Loại: Hướng dẫn (0)], @ p1 = '[email protected]' [Loại: Chuỗi (4000)], @ p2 = 'myFriend' [Loại: Chuỗi (4000)], @ p3 = 2ea35658-edb1-43e3-b848-e1915d1042df [Type: Guid (0)]
2011-12-02 13: 06: 49.750 [Agent: adapter chạy thread cho thử nghiệm 'SaveFriendDetails_Test' với id '17016e48- 1ff4-4dea-8536-6aa3b24e5fb7' ] DEBUG NHibernate.AdoNet.AbstractBatcher - Đóng IDbCommand, mở IDbCommands: 0 2011/12/02 13: 06: 49.751 [Agent: adapter chạy thread cho test 'SaveFriendDetails_Test' với id '17016e48-1ff4-4dea-8536-6aa3b24e5fb7'] ERROR NHibernate.Event.Default.AbstractFlushingEventListener - Không thể đồng bộ hóa trạng thái cơ sở dữ liệu với phiên NHibernate.StaleStateException: Cập nhật hàng loạt trả về hàng không mong muốn đếm từ bản cập nhật; số hàng thực tế: 0; dự kiến: 1
Có ai thấy sự cố không?
TIA
Một vài possiblites, đối tượng của bạn được tách ra và không bao giờ được actaully tạo ra trong databse, vì vậy không có hàng đối tượng gốc để cập nhật. Hoặc một cái gì đó đã thay đổi một giá trị trong bảng trước khi cập nhật của bạn. Tôi cho rằng đây là một hành động lừa đảo lặp lại? Đăng một số mã snipts về cách bạn đang tạo, cập nhật và lưu đối tượng sẽ hữu ích. – user957902
Tôi nghĩ bạn nên viết nguồn ngoại lệ với ngoại lệ. Nó sẽ hữu ích hơn. – Joshi
added.i không thể xem tại sao: NHibernate.Event.Default.AbstractFlushingEventListener - Không thể đồng bộ hóa trạng thái cơ sở dữ liệu với phiên NHibernate –