At first sight this should not happen. Rhino.Security should create the
entitytype if it does not exist yet.
Can you create a failing test case for this issue? You can base yourself on
the existing tests of Rhino.Security. I'll look into it then.

Bart

On Fri, Mar 27, 2009 at 10:08 AM, mjcoder <[email protected]> wrote:

>
> Hi,
>
> I ran into a problem where the following code snipped produced a SQL
> error that complains about a duplicate identifier in table
> security_EntityTypes:
>
>        foreach (var objAddress in objAddresses)
>        {
>            AuthorizationRepository.AssociateEntityWith(objAddress,
> objEntityGroup);
>        }
>        UnitOfWork.Current.TransactionalFlush();
>
> The problem was that "AssociateEntityWith" query an EntityType
> instance for the given entity which wasn't created/saved yet. I'm
> using NHRepository as IRepository implementation.
>
> I'm currently using the following piece of code to reliably create the
> given EntityType instance:
>
>            var objEntityTypes =
> UnitOfWork.CurrentSession.CreateCriteria(typeof
> (Rhino.Security.Model.EntityType))
>                .Add(NHibernate.Criterion.Expression.Eq("Name", typeof
> (Address).FullName))
>                .List<Rhino.Security.Model.EntityType>();
>            if (objEntityTypes.Count == 0)
>            {
>                var objEntityType = new Rhino.Security.Model.EntityType
> () { Name = typeof(Address).FullName };
>                UnitOfWork.CurrentSession.Save(objEntityType);
>                UnitOfWork.Current.TransactionalFlush();
>            }
>
> ... or is there a better way? The problem is that I have to call this
> snippet for every entity to every ASP.NET page that does something
> security related which seems to be an overhead I want to avoid.
>
> Regards,
> Mark
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" 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/rhino-tools-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to