代码之家  ›  专栏  ›  技术社区  ›  Paul

使用fluent nhibernate将单个类映射到两个表中的列

  •  0
  • Paul  · 技术社区  · 15 年前

    我有以下数据库表:

    TABLE dbo.Client
    (
      ClientId PK uniqueidentifier ,
      ClientNames VARCHAR(200)
    )
    
    TABLE dbo.User
    (
      userID PK UniqueIdentifier,
      password varchar(15),
      passwordsalt varchar(15),
      ClientID FK uniqueidentifier
    )
    

    我想把它们映射到我的班级:

     public class Client
     {
       public virtual Guid Id {get;set;}
       public virtual string Name {get;set;}
       public virtual string password {get;set;}
       public virtual string passwordsalt {get;set;}
     }
    

    我已经将映射排序到客户机表中的位(请原谅vb…)

     Public Class ClientMap
       Inherits ClassMap(Of Client)
    
       Public Sub New()
         Me.Id(Function(x) x.Id, "ClientID")
         Me.Map(Function(x) x.Name, "ClientNames")
       End Sub
    
     End Class
    

    如何将password&passwordstat属性映射到用户表中的相应列?

    事先谢谢,

    保罗

    1 回复  |  直到 15 年前
        1
  •  0
  •   Erik van Brakel scottrakes    15 年前

    好的,解决了这个问题…

    我的映射文件现在看起来如下:

    Public Sub New()
      Me.Id(Function(x) x.Id, "ClientID")
      Me.Map(Function(x) x.FullNames, "ClientNames")
      Me.Join("Users", AddressOf AddUsersTableInfo)
    End Sub
    
    Public Sub AddUsersTableInfo(ByVal m As JoinPart(Of Client))
      m.Map(Function(x) x.PasswordSalt, "passwordSalt")
      m.Map(Function(x) x.Password, "password")
    End Sub
    

    爱上了vb:o(