Mapping classes - jacentino/DbFun GitHub Wiki
DbFun can also handle POCO objects. Consider following class:
type User(
userId : int,
name : string,
email : string,
created : DateTime) =
member __.UserId = userId
member __.Name = name
member __.Email = email
member __.Created = createdIts properties can be mapped to query parameters using following configuration:
let config = defaultConfig.AddParamPropertyMapper<User>()or directly, in a query definition:
let insertUser = query.Sql(
"insert into User (userId, name, email, created) values (@userId, @name, @email, @created)",
Params.Properties<User>(),
Results.Unit)POCO can also be used as a result structure. To make it work, following configuration should be added:
let config = defaultConfig.AddRowClassMapper<User>()
or in query definition:
let getUser = query.Sql(
"select userId, name, email, created from User where userId = @userId",
Params.Int("userId"),
Results.List(Rows.Class<User>()))