既然sp_columns存储过程可以查询数据库字段的类型与长度等信息,为啥要还要在实体类上写自定义属性?
当然写自定义属性是为了映射,但是系统存储过程sp_columns可以把这些映射信息读出来的,sp_pkeys可以读主键信息。
难道存储过程的查询效率还不如自定义属性的效率?
第一,存储过程的效率和自定义属性的效率根本是2回事,不在同一个环境和运行时之下,没有比较的前提
第二,不是每个数据库系统都有sp_columns
第三,你不觉得为了获取实体映射要先连下数据库很搞吗……
既然用了反射,对效率的关注性可能就没那么强烈。
既然用了反射,更大的意向可能是倾向通用简单化。
如果用存储过程查,那在支持不同的数据库方面,通用简单化的问题就来临了。
这里,效率不是主要问题。