2

지금은 nhibernate를 발견하고 있습니다. 따라서 내 질문에 어쩌면 매우 어리 석다.nhibernate 테이블 값 결합 기능

내가 뭘하려는거야 (나는 레거시 데이터베이스와 함께 일하고있다)는 데이터의 일부가 테이블 값 기능에서 나오는 개체를 얻는 것이다. 내 기업은 다음과 같은

public class Entity 
{ 
    public virtual int Id { get; protected set; } 
    .... 
    public virtual int AccessRightId { get; set; } 
} 
AccessRightId 테이블 값 함수를 내가

public class EntityMap : ClassMap<Entity> 
    { 
    public EntityMap() 
    { 
     this.Id(entity => entity .Id);   
     this.Join(
      "fp_AccessRight('userId')", 
      join => 
      { 
       join.Fetch.Join(); 
       join.KeyColumn("EntityId"); 
       join.Map(t => t.AccessRightId, "AccessRightType"); 
       join.Table(); 
      }); 
    }   
} 

불행하게도, 나는 다음과 같은 매핑을 해요 한

(fp_AccessRight ('userId를'))에서 유래

어떤 값 으로든 'userId'를 대체 할 수 없습니다. 감사합니다. . 할 방법이 있습니까?

+0

답변으로 게시하고 수락하면 다른 사람들이 쉽게 찾을 수 있습니다. – Firo

답변

1

마지막으로 해결했습니다.

트릭

는 이렇게 가입하게했다 :

this.Join("fp_ACCOUNT_ACL(:AclFilter.userId)" 

을 다음 simpley 필터

this.session.EnableFilter("AclFilter").SetParameter("userId", "bdd#5"); 

내가 예를 들어 here을 찾을 수 있도록.