0

多くの役割を持つユーザーがいます

public class User 
{
   public int Id {get;set;}
   public string Name {get;set;}
   public List<Role> Roles {get;set;}
}

public class Roles 
{
   public int Id {get;set;}
   public string Key{get;set;}
}

public class UserRoles 
{
   public int UserId {get;set;}
   public int RoleId {get;set;}
}

私が達成しようとしているのは、1 つのクエリですべてのロールを持つユーザーを取得することですが、これまでのところ失敗しています。マッピングには、カスタムのコンベンションベースのマッパーを使用します (コードを提供できますが、かなり大きいです)。

ここで説明されているように、FetchOneToManyを試し、Fetchを試しました

https://github.com/schotime/NPoco/wiki/One-to-Many-Query-Helpers https://github.com/schotime/NPoco/wiki/Version-3

ただし、役割は常に空です。ロールとユーザー自体は正しくマッピングされており、次のような関係を指定しようとしました

For<User>().Columns(x =>
        {
            x.Many(c => c.Roles);
            x.Column(c => c.Roles).ComplexMapping();
        }, true);  

繰り返しますが、役に立ちませんでした。役割は空です。

何が欠けているのかわかりません。何か案は?

4

1 に答える 1