IT民工系列——c#操作EditGrid,自己做一个在线Excel数据库吧!
前言:
我是一名IT民工,热爱计算机 热爱软件。我从事.net平台开发也有几年了,专注c#。熟悉: ORM/RBAC/AOP/OO/持久层/数据流/工作流/信息流/企业系统开发/Excel等解密等。
我过去几年直到现在的技术积累,希望能帮上各位兄弟。如果各位兄弟看上眼,一元钱用淘宝拍下;在淘宝商品备注留下email和项目的名字;我会邮寄给您代码源码密码和说明文档。
一元钱不多,希望能节省您的开发时间,也支持鼓励下我。如果兄弟收到了源码,也请保存好,不要放在互联网上,留小弟一条小小路走。我的淘宝用户是:pixysoft ,请确认,不要被恶意者冒用。
如果各位兄弟有小项目或者小想法,不想自己费神,我也愿意毛遂自荐承担一下,价格你开,只要我能做的就一定答应帮您做好!
代码目的:
通过C#操作EditGrid,实现一个免费的、永远在线的、数据不会丢失的web2.0数据库!
小声说两句:
现在国内的网站又贵,空间又小,图片用了外链,可是空间还是不够,一旦需要做留言系统,立刻崩溃了。
很多留言其实都是废话,但是没有这个功能又不完整,那么最简单的方法,自己的网站保存留言的一个引用,需要查看的时候,就读取外部的一个数据库,获取留言。
代码测试片段:
1. 去http://www.editgrid.com/注册一个帐号
2. 去http://www.editgrid.com/developer/register 注册一个应用,就能够获得一个appKey
3. 按照下列步骤完成注册
using System.Collections.Generic;
using System.Text;
using Pixysoft.Iter.EditGrid.com.editgrid.www;
namespace Pixysoft.TdParty.Office.EditGridNet
{
class testdriven
{
private void test_auth_01()
{
string appkey = "!!!!!!!!!!!!"; // 填入您的appkey
string workspace = "/user/@@@@"; // @@@填入您的注册名
string token = EditGridManager.GetAuthToken(appkey);
//返回的response里面,找<value>里面的,就是token
}
public void test_auth_02()
{
string appkey = "!!!!!!!!!!!!"; // 填入您的appkey
string workspace = "/user/@@@@"; // @@@填入您的注册名
string token = "###########";
string auth_url = EditGridManager.GetAuthUrl(token);
//在ie打开,输入上面的url,完成验证
}
public void test_auth_03()
{
string appkey = "!!!!!!!!!!!!"; // 填入您的appkey
string workspace = "/user/@@@@"; // @@@填入您的注册名
string token = "###########";
string sessionkey = EditGridManager.GetSessionKey(appkey, token);
//最终获取了sessionkey,在response的<value>里面,保留起来以后直接调用就可以了。
}
private void test_create_workbook()
{
//在editgrid里面的实体结构: workbook包含了多个worksheet,其又包含了多个cell
string sessionkey = "$$$$$$$$$$$$$$$";//上文获得的sessionkey
string workspace = "/user/@@@@"; // @@@填入您的注册名
EditGridManager manager = new EditGridManager(sessionkey, workspace);
EditGridWorkbook book = manager.CreateWorkbook("private_book");
book.CreateWorksheet(0, "demosheet");
book.GetWorksheetList()[0].SetCellValue(0, 0, "helloworld");
Console.WriteLine(book.GetWorksheetList()[0].GetCellValue(0, 0));
}
}
}
http://www.citi-box.com/accessories/temp/Pixysoft.Iter.EditGrid.rar
代码资助链接(淘宝):
http://item.taobao.com/auction/item_detail.jhtml?item_id=86e39a36348da8663d647a9cce75d29c&x_id=0db2
备注:
在这个web2.0的时代,我们应该感受一下站在巨人肩膀上的乐趣!
很多的公司已经为我们提供了丰富的api,我们只要简单的集成,就能够极大丰富我们的网站。下次玩玩twitter和facebook的api!
顺便说下,本来打算用google spreadsheet的,但是可恨的google在.net的api上没有支持最新的协议,所以不能够创建表单,只能读取原有的表单。(不过java支持了)
如果有心人愿意把google的java版本翻译成.net版本,我希望用这个项目和您交换!
我简单说下思路,在google里面有个extension,这个就是包含了请求的具体信息,可惜在.net版本里面缺少了一个方法:addextensionlist,导致无法创建表单。java 版本重写了整个框架,增加了一些方法,所以支持。