The unit test code:
public class TestUserInfo
{
[Test]
public void TestInsert()
{
IUserInfoManager uimanager =
ObjectFactory.Container.UserInfoManager;
UserInfo ui = new UserInfo();
ui.LoginName = "test9";
ui.LoginPassWord = "1...@abc";
ui.LastEditPassWordDate = DateTime.Now;
ui.BaseInfo = new UserBaseInfo { Gender = GenderEnum.Male,
UserName = "test1", User = ui };
uimanager.AddUserInfo(ui);
}
}
The UserInfo model:
namespace DAL.Model.User
{
[ActiveRecord(Lazy=true)]
public class UserInfo
{
public UserInfo()
{
IsEnabled = true;
IsLocked = false;
}
[PrimaryKey(PrimaryKeyType.Guid)]
public virtual Guid SID { get; set; }
[Property]
public virtual string LoginName { get; set; }
[Property]
public virtual string LoginPassWord { get; set; }
[Property]
public virtual DateTime LastEditPassWordDate { get; set; }
[Property]
public virtual bool IsLocked { get; set; }
[Property]
public virtual bool IsEnabled { get; set; }
[OneToOne(Cascade = CascadeEnum.All)]
public virtual UserBaseInfo BaseInfo { get; set; }
}
}
On 1月12日, 上午9时37分, Krzysztof Koźmic <[email protected]>
wrote:
> How did you create this object?
>
> On 12/01/2011 11:35 AM, languanghao wrote:
>
> > Hi,
>
> > I used Castle.Facilities.AutoTx in my program, but it didn't work.
>
> > Code:
> > namespace BLL.IMPL.User
> > {
> > [Transactional]
> > public class UserInfoManagerIMPL : InitializingCastle,
> > IUserInfoManager
> > {
>
> > [Transaction(Castle.Services.Transaction.TransactionMode.Requires)]
> > public virtual bool AddUserInfo(UserInfo user)
> > {
> > ActiveRecordMediator<UserInfo>.Create(user);
> > throw new Exception("test");
> > }
> > }
>
> > This method throw an Exception,but the userinfo has commit.
--
You received this message because you are subscribed to the Google Groups
"Castle Project Development List" 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-devel?hl=en.