我想做一个关于数据库存取的程序。
要求:
1。支持C/S和B/S。
2。客户端永远也不能知道数据库的结构和访问数据库。
3。客户端可以得到数据库的相关数据及操作,但是要根据身份操作有权限的部份。而这些只能在服务端实现,不能在客户端验证客户。以上的难点只是在C/S方面,因为这来就是asp的默认权限,B/S根本不用处理也行,只不过如果这样处理后,把B/S弄成C/S,可以把生成HTML的任务和读取数据的任务为开来,也是一件很好的事。请教一下高手,有什么好建议和有什么好文章或教程可以参考。
要求:
1。支持C/S和B/S。
2。客户端永远也不能知道数据库的结构和访问数据库。
3。客户端可以得到数据库的相关数据及操作,但是要根据身份操作有权限的部份。而这些只能在服务端实现,不能在客户端验证客户。以上的难点只是在C/S方面,因为这来就是asp的默认权限,B/S根本不用处理也行,只不过如果这样处理后,把B/S弄成C/S,可以把生成HTML的任务和读取数据的任务为开来,也是一件很好的事。请教一下高手,有什么好建议和有什么好文章或教程可以参考。
底层做两个类
一个是数据库访问类
一个是sql语句的模版类,按权限要求成几部分,并且做sql模版参数替换(正则表达式实现)和参数过滤
客户端界面产生一个sql语句编号请求及相关参数给服务端
服务端验证权限通过后,执行相应的sql模板语句,然后将结果返回给客户端
这样所有的操作都是在服务端实现的,客户端只是做一个请求而已
B/S则无所谓了,反正本来就看不到。
2. 在Client和Server solution里包括共同的Library project(DataSet, Command class等,因为它们在Client和server端均要用到.)
3. server端的功能就是接受client发送过来的Command, 然后相应的命令和执行stored procedure, 组装Dataset, 发送到client端.