If the existing proxy is insufficiently "narrow" (derived), instantiate a new proxy
and overwrite the registration of the old one. This breaks == and occurs only for
"class" proxies rather than "interface" proxies. Also init the proxy to point to
the given target implementation if necessary.
Namespace: NHibernate.EngineAssembly: NHibernate (in NHibernate.dll) Version: 3.2.0.4000 (3.2.0.4000)
Syntax
C# |
---|
public Object NarrowProxy( INHibernateProxy proxy, IEntityPersister persister, EntityKey key, Object obj ) |
Visual Basic |
---|
Public Function NarrowProxy ( _ proxy As INHibernateProxy, _ persister As IEntityPersister, _ key As EntityKey, _ obj As Object _ ) As Object |
Visual C++ |
---|
public: virtual Object^ NarrowProxy( INHibernateProxy^ proxy, IEntityPersister^ persister, EntityKey^ key, Object^ obj ) sealed |
Parameters
- proxy
- Type: NHibernate.Proxy..::..INHibernateProxy
The proxy instance to be narrowed.
- persister
- Type: NHibernate.Persister.Entity..::..IEntityPersister
The persister for the proxied entity.
- key
- Type: NHibernate.Engine..::..EntityKey
The internal cache key for the proxied entity.
- obj
- Type: System..::..Object
(optional) the actual proxied entity instance.