Нужна помощь в обновлении записей с помощью LinQ.
Я попытался обновить запись, но она не отображается в базе данных.
Первичный ключ задается как в db, так и в файле LinQ dbml.
Ниже приведены коды:
RPHContrib _phContrib = new RPHContrib();
_phContrib.PHTableNo = phContrib.PHTableNo;
_phContrib.AmountFrom = phContrib.AmountFrom;
_phContrib.AmountTo = phContrib.AmountTo;
_phContrib.EmployeePH = phContrib.EmployeePH;
_phContrib.EmployerAmt = phContrib.EmployerAmt;
_phContrib.IsActive = phContrib.IsActive;
_phContrib.CreatedByNo = phContrib.CreatedByNo;
_phContrib.CreatedDate = phContrib.CreatedDate;
_phContrib.ModifiedByNo = SessionStateController.OnlineUserNo;
_phContrib.ModifiedDate = DateTime.Now;
LINQHelper.Instance.GenericDataContext<HRWizardDataContext>(GetDataContext(false));
LINQHelper.Instance.Update<RPHContrib>(_phContrib);
public bool Update<T>(T obj) where T : class, ICommon, new()
{
using (var db = GetDBDataContext())
{
db.Connection.Open();
DbTransaction trans = db.Connection.BeginTransaction();
db.Transaction = trans;
// Populate object log
obj.IModifiedDate = DateTime.Now;
try
{
Detach<T>(obj); // Detach LINQ entity from the original DataContext before attaching to the new one
db.GetTable<T>().Attach(obj, true);
db.SubmitChanges();
db.Transaction.Commit();
}
catch (Exception ex)
{
db.Transaction.Rollback();
// TODO: Put error logging code here
throw ex;
}
finally
{
if (db.Connection != null)
{
db.Connection.Close();
db.Connection.Dispose();
}
}
}
return true;
}