Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

NHibernate IPreUpdateEventListener, IPreInsertEventListener डीबी को सहेज नहीं रहा है

इसका उत्तर आयेंडे के लेख से इस उद्धरण में छिपा/खुलाया जाएगा

यह एक ही लेख से यह दिखाने वाला कोड है:

public class AuditEventListener : IPreUpdateEventListener, IPreInsertEventListener
{
    public bool OnPreUpdate(PreUpdateEvent @event)
    {
        var audit = @event.Entity as IHaveAuditInformation;
        if (audit == null)
            return false;

        var time = DateTime.Now;
        var name = WindowsIdentity.GetCurrent().Name;

        Set(@event.Persister, @event.State, "UpdatedAt", time);
        Set(@event.Persister, @event.State, "UpdatedBy", name);

        audit.UpdatedAt = time;
        audit.UpdatedBy = name;

        return false;
    }

    public bool OnPreInsert(PreInsertEvent @event)
    {
        var audit = @event.Entity as IHaveAuditInformation;
        if (audit == null)
            return false;


        var time = DateTime.Now;
        var name = WindowsIdentity.GetCurrent().Name;

        Set(@event.Persister, @event.State, "CreatedAt", time);
        Set(@event.Persister, @event.State, "UpdatedAt", time);
        Set(@event.Persister, @event.State, "CreatedBy", name);
        Set(@event.Persister, @event.State, "UpdatedBy", name);

        audit.CreatedAt = time;
        audit.CreatedBy = name;
        audit.UpdatedAt = time;
        audit.UpdatedBy = name;

        return false;
    }

और ये रहा जादुई Set()

private void Set(IEntityPersister persister, object[] state
       , string propertyName, object value)
{
    var index = Array.IndexOf(persister.PropertyNames, propertyName);
    if (index == -1)
        return;
    state[index] = value;
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं अपने कोडइग्निटर मॉडल में ON DUPLICATE KEY UPDATE का उपयोग कैसे करूं?

  2. MySQL में MIN() बनाम LEAST():क्या अंतर है?

  3. nodejs mysql त्रुटि:कनेक्शन खो गया सर्वर ने कनेक्शन बंद कर दिया

  4. JSON स्ट्रिंग के साथ फ़ील्ड खोजने के लिए MySQL क्वेरी

  5. क्या MySQL Regexp यूनिकोड मिलान का समर्थन करता है