I need to fetch data using relation with EntityFields for log! Please help!

Posts   
 
    
Posts: 14
Joined: 09-Sep-2007
# Posted on: 15-Dec-2007 13:02:47   

I need to fetch data using relation with EntityFields for log.If current field is FK i want to get value at runtime.This is my code below:

private void SetCustomerLog(CustomerEntity backUp, CustomerEntity updated)
{
    string oldValue = "";
    string newValue = "";
    ChangeTrackerEntity entityLog;

    for (int i = 0; i < backUp.Fields.Count; i++)
    {
        if (backUp.Fields[i].CurrentValue != null)
            oldValue = backUp.Fields[i].CurrentValue.ToString();
        else
            oldValue = null;
        if (updated.Fields[i].CurrentValue != null)
            newValue = updated.Fields[i].CurrentValue.ToString();
        else
            newValue = null;

        if (oldValue != newValue)
        {
            entityLog = new ChangeTrackerEntity();
            entityLog.TableName = backUp.Fields[i].SourceObjectName;
            entityLog.PrimaryKeyFieldName = "ID";
            entityLog.PrimaryKeyValue = customerId;
            entityLog.ChangedFieldType = backUp.Fields[i].ActualDotNetType.Name;
            if (backUp.Fields[i].IsForeignKey)
            {
                if (backUp.Fields[i].CurrentValue != null)
                    entityLog.ChangedFieldOldId = (int)backUp.Fields[i].CurrentValue;
                else
                    entityLog.ChangedFieldOldId = null;

                if (updated.Fields[i].CurrentValue != null)
                    entityLog.ChangedFieldNewId = (int)updated.Fields[i].CurrentValue;
                else
                    entityLog.ChangedFieldNewId = null;

               //Here if field is ForeignKey i need to get related entity's value?Then i ll set
                //entityLog.ChangedFieldNewString=...
                //entityLog.ChangedFieldOldString=...
            }

        }
    }
}

Please help thanks a lot

daelmo avatar
daelmo
Support Team
Posts: 8245
Joined: 28-Nov-2005
# Posted on: 15-Dec-2007 19:29:37   

//Here if field is ForeignKey i need to get related entity's value?

What do you mean when you say value? (an specific field value? what field of the related entity?

BTW, Do you know about LLBLGen v2.5 Auditing feature? In v2.5 Auditing you can combine AuditReferenceOfRelatedEntity, AuditEntityFieldSet and AuditUpdateOfExistingEntity methods to do what you are doing... and more.

David Elizondo | LLBLGen Support Team