关于OrmLite的简单介绍,参见本公众号已发文章。

​ServiceStack:OrmLite操作数据库​

OrmLite保存数据的时候,要求在开发中,所使用的model类名,字段名和数据库中对应的表名和字段名,要保持一致,这样才能写入到数据库中,这是开始用的时候,经验不足,后来查找官方的文档,发现通过给表名和属性名赋予属性,从而能够和数据库中进行对应。

在使用model的时候,获取数据的来源可能是不同的,例如从网络服务的json数据,获得的数据字段,和数据库中现有表的字段是不一致,当然可以定义两个model,来进行交换,这样会有不少代码冗余,还要涉及到model中数据的转换。

所以,ServiceStack的OrmLite提供了通过标示属性,来达到字段的转换,最常用的是以下两种:

        Alias是将当前的属性对应到数据库中表中字段的名称,也可以和表名做对应。

        [Alias("stationid")]

        public string StationID { get; set; }

Ignore是忽略的字段,此属性不会在数据表进行字段对应,因为假如数据表没有这个属性,不加这个属性,会报错的。

        [Ignore]

        public string StationName { get; set; }


通过在model这样进行设置,就可以将其他源返回来的数据,直接使用Save函数保存到数据库中了。

OrmLite中还有字段长度等其他的属性控制,这个可以参照官方的网站进行查看。