做Sharepoint项目,要分几个步骤:首先部署服务器和开发环境,然后实施代码管理,最后才是开发。
部署服务器,需要安装WSS(免费的版本)或者Moss(付费的版本),Office,SQL。
部署开发环境,需要要安装WSS或者Moss,Visual Studio,Office,SQL。
代码管理需要安装, SVN,WPSBuilder。
开发,常用到的技术是WebPart,Event Handler, Workflow,语法有C#,对象模型,Caml。
开发中比较困难的事就是调试代码,很多功能块都是部署到服务器才能看到效果,但常常出现黄色页面的未知错误,我常用的调试方法有三种:第一种是把代码写在页面上,不写成Bin,通过try catch 和 Response.Write把问题找出来,这样的好处是能迅速找出错误,节约时间,但坏处是,代码不安全,并且代码管理很差,不能重用。第二种是需要在本机部署开发环境,通过VS的单步调试来找出问题,没问题了把Bin和页面部署到服务器,好处是代码能统一管理,提高重用性。坏处是部署麻烦(有WPSBuilder话方便些),并且局限于WebPart,EventHandler,这类比较独立的程序。第三种是就是那种很特殊的,只能再服务器上调试,但不想把代码写在页面上,那只有通过写日志来查看问题,好处是日志可以保留,在以后维护中可以起到很重要的作用。坏处是,部署麻烦,每次测试后都需要重新部署。
常见问题:
1. 无法在页面中写入代码块
解决办法:http://www.cnblogs.com/jlydboy/articles/1288880.html
2. 临时提升代码的运行权限
解决办法:http://www.cnblogs.com/jlydboy/articles/1229827.html
3. 部署AJAX到Sharepoint站点
解决办法:http://www.cnblogs.com/jlydboy/articles/1588067.html
4. 打断或者继承父级权限
解决办法:http://www.cnblogs.com/jlydboy/articles/1553591.html
5. 如何使用Session
解决办法:http://www.cnblogs.com/jlydboy/articles/1523205.html
6. 列表和文档库EventHandler的写法和部署
解决办法:http://www.cnblogs.com/jlydboy/articles/1494723.html
7. 实现代码对讨论板添加项和回复
解决办法:http://www.cnblogs.com/jlydboy/articles/1437163.html
8. Caml查询列表数据的方式
解决办法:
ViewAttributes
a. Scope='Default' : 只顯示指定文件夾下的項目及子文件夾
b. Scope='FilesOnly' : 只顯示指定文件夾下的項目
c. Scope='Recursive' : 顯示所有項目,不顯示文件夾
d. Scope='RecursiveAll' : 顯示所有項目和所有子文件夾