Dapper 네스트된 객체 질의
User:
///
///
///
[Serializable]
public partial class SysUser
{
public SysUser()
{}
#region Model
///
///
///
public string SysId { get; set; }
///
///
///
public string UserName { get; set; }
///
///
///
public string UserPwd { get; set; }
///
///
///
public DateTime? CreateTime { get; set; }
///
///
///
public DateTime? LastLogin { get; set; }
///
/// , 、
///
public string RecordStatus { get; set; }
///
///
///
public SysUserInfo UserInfo { get; set; }
#endregion Model
public IEnumerable Roles { get; set; }
}
UserInfo:
///
///
///
[Serializable]
public partial class SysUserInfo
{
public SysUserInfo()
{}
#region Model
///
///
///
public string SysId { get; set; }
///
///
///
public string RealName { get; set; }
///
///
///
public string Title { get; set; }
///
///
///
public bool Sex { get; set; }
///
///
///
public string Phone { get; set; }
///
///
///
public string Fax { get; set; }
///
///
///
public string Email { get; set; }
///
/// qq
///
public string QQ { get; set; }
///
///
///
public string Address { get; set; }
#endregion Model
}
질의의 특정 Sql:
select u.CreateTime,u.LastLogin,u.RecordStatus,u.SysId,u.UserName,u.UserPwd,ui.SysId,
ui.Address,ui.Email,ui.Fax,ui.Phone,ui.QQ,ui.RealName,ui.Sex,ui.Title
from Sys_User u inner join Sys_UserInfo ui on u.SysId=ui.SysId inner join Sys_UserRole ur on
u.SysId=ur.UserId inner join Sys_Role r on ur.RoleId = r.SysId
UserInfo의 데이터를 User에 채우려면 다음과 같은 방법이 필요합니다.
connection.Query( Constant.ProcGetList, (u, ui) => { u.UserInfo = ui; return u; }, p,splitOn:"SysId", commandType: CommandType.StoredProcedure);
여기서 주의해야 할 것은 splitOn입니다. 다른 것은 분할 하위 대상의 속성입니다.
전재 대상:https://www.cnblogs.com/jiguixin/p/3317485.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.