精致的物业类型

时间:2016-04-12 17:04:56

标签: types mapping dapper

如果我有一张如下表格:

CREATE TABLE  MYTABLE
(
    ID NUMBER(15) NOT NULL CONSTRAINT IFS_ROUTINE_ADGROUP_PK_PRIM PRIMARY KEY, 
    NUMBER_COLUMN NUMBER(15)  NOT NULL,
    TEXT_COLUMN VARCHAR2 (50)  NOT NULL
)  ;

如果我在MYTABLE中有一条记录,其中TEXT_COLUMN列包含'12345'作为其值,我的模型如下:

public class MyModel
{
    public long ID;
    public long NUMBER_COLUMN;
    public long TEXT_COLUMN; //this is an error (since the type in the database is text)
}

在返回此单行的测试场景中,一切都会正常返回。但是,如果存在来自数据库的文本值,则会发生错误。

出现以下问题:

  1. 是否可以通过Dapper防止此类错误?如果数据库中的类型与模型中的类型不匹配,则抛出异常?
  2. 我是否应该假设Dapper应该使用良好映射的对象(由于其性能提升)?

1 个答案:

答案 0 :(得分:0)

目前可接受的答案集:

  1. 没有
  2. 应该与测试一起仔细进行映射。 Dapper不关心应用程序中的模型和数据库中的模型匹配类型。
  3. 谢谢,@Shyju为您的合作&时间。