虽然接近10年没有用过VIsual FoxPro,FoxPro已经没落了,微软也不再开发了,部分放在CodePlex开源了。
但是一直很怀念VFP,可以直接操作数据库,又是一种高级结构化/基于对象的高级程序设计语言,把数据库和内存变量使用一样方便,不像现在用高级语言操作数据库,要连接,要O/R Mapping。VFP天生没有阻抗失配的问题。
C#(h或者别的高级语言,例如vb.net)自身并不具备对数据库进行操作的功能,它对数据库的处理是通过.NET frameWork SDK中面向数据库编程的类库来实现的。其中,ADO.NET又是.NET frameWork SDK中重要的组成部分。
我们需要的,不仅仅是Linq之类的,希望语言本身能处理数据库。
例如C#.net有一种这样的扩展
DataTable
{
string(8) Name;//姓名为长度为8的字符串
int(2) age;//年龄为两位的整数
flloat(1,2) height; //身高单位为米,1位整数,两位小数
sex gender
string(18) Id not null;//身份证号码
keyword
}
enum sex
{ male, femail}