在隐式val GetResult中分散隐式扩展

时间:2013-11-12 20:34:44

标签: scala slick typesafe

使用光滑并按照示例,我创建了一个隐式val来转换我的结果:

implicit val getLocationResult = GetResult(r => LkpLocation(r.<<, r.<<, r.<<, r.<<))
val marketsQuery1 = sql"exec get_locations @ProjectId = ${projectID.get}, @ObjectId = $objectID, @ComponentTypeID = 1".as[LkpLocation]

但是我收到一条奇怪的错误消息:

diverging implicit expansion for type scala.slick.jdbc.GetResult[T] starting with method createGetTuple22 in object GetResult

此错误的原因是什么? 是否有其他方法可以声明更稳定的隐式转换?

1 个答案:

答案 0 :(得分:2)

确保您转换为的课程仅包含光滑的类型,而且PositionedResult可以使用它来处理&#39; s&lt;&lt;方法。有关所有类型的列表,请参阅PositionedResult的其他方法。

我在目标类上使用java.util.Date时遇到此错误,而PositionedResult的方法nextDate返回java.sql.Date。将目标类的日期字段声明为java.sql.Date然后解决了问题。