Hi, I am trying to get the following to work without much success:

This class is read from file and compiled in memory:

using System;
using Castle.ActiveRecord;
using iTradeStorage.ValueObjects;
namespace iTradeStorage.ValueObjects
{
        [ActiveRecord]
        public class iTradeType1 : ActiveRecordBase
        {
                [PrimaryKey]
                public string Identifier { get; set; }
                [Property]
                public String Col1 { get; set; }
                [Property]
                public DateTime Col2 { get; set; }
        }
}

A table existe in the db that matches this class. (created using
UpdateSchema())

I then try to save an object, the following way:

            Type type = _typeManager.GetType(typeVo); //return the
type iTradeType1
            object theObject = Activator.CreateInstance(type);
            PropertyInfo[] pis = type.GetProperties();
            Dictionary<string, PropertyInfo> propertyInfosPerName =
new Dictionary<string, PropertyInfo>();
            foreach (PropertyInfo propertyInfo in pis)
            {
                //PropertyAttributes pas = propertyInfo.Attributes;
                propertyInfosPerName.Add(propertyInfo.Name,
propertyInfo);
            }
            string id = "thisisatest";
            propertyInfosPerName["Identifier"].SetValue(theObject, id,
null);
            propertyInfosPerName["Col1"].SetValue(theObject,
"col1ValTest", null);
            propertyInfosPerName["Col2"].SetValue(theObject,
DateTime.Now, null);

            ((ActiveRecordBase)theObject).Save();

and get the following exception:

{"Could not perform Save for iTradeType1"}
Inner ex: {"Exception occurred getter of
Rbs.Gbm.Sgi.iTradeStorage.ValueObjects.iTradeType1.Identifier"}
Innder ex: {"Object does not match target type."}

   at Castle.ActiveRecord.ActiveRecordBase.InternalSave(Object
instance, Boolean flush) in c:\TeamCity\buildAgent\work
\e41ee5ead2eba140\src\Castle.ActiveRecord\Framework
\ActiveRecordBase.cs:line 601
   at Castle.ActiveRecord.ActiveRecordBase.Save(Object instance) in c:
\TeamCity\buildAgent\work\e41ee5ead2eba140\src\Castle.ActiveRecord
\Framework\ActiveRecordBase.cs:line 510
   at Castle.ActiveRecord.ActiveRecordBase.Save() in c:\TeamCity
\buildAgent\work\e41ee5ead2eba140\src\Castle.ActiveRecord\Framework
\ActiveRecordBase.cs:line 1547
   at
Rbs.Gbm.Sgi.iTradeStorage.ObjectManagement.ObjectManager.StoreObject(String
objectXml) in C:\Development\Rbs.Gbm.Sgi\iTradeStorage\ObjectManagement
\ObjectManager.cs:line 58
   at ObjectManagementTests.ObjectManagerTests.StoreObjectTest() in C:
\Development\Rbs.Gbm.Sgi\iTradeStorage\Tests\ObjectManagementTests
\ObjectManagerTests.cs:line 78


Can somebody kindly help?

I'd like to try and debug the active record source code but can't seem
to find it. Where canI get ahold of it?

Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en.

Reply via email to