新一代的Visual Studio 2010對於SharePoint 2010的專案撰寫,有非常另人讚賞的改進. 以往寫一個WebPart要搞好多雜七雜八的步驟,也要硬寫HTML輸出,當然有人說可以寫UserControl後再掛在其它的WebPart容器內, 但是也是須要不少工夫去處理它. 現在,這些問題都沒了,簡單的幾個步驟,就可以做出功能強大的WebPart,而且偵錯方法也非常簡單.

新一代的Visual Studio 2010對於SharePoint 2010的專案撰寫,有非常另人讚賞的改進. 以往寫一個WebPart要搞好多雜七雜八的步驟,也要硬寫HTML輸出,當然有人說可以寫UserControl後再掛在其它的WebPart容器內,但是也是須要不少工夫去處理它. 現在,這些問題都沒了,簡單的幾個步驟,就可以做出功能強大的WebPart,而且偵錯方法也非常簡單.

首先,在Visual Studio內,選擇新增一個SharePoint 2010的視覺化WebPart專案,

接下來選擇一個要做測試用的SharePoint 2010網站位址,在這裡可以選本機上的SharePoint 2010以方便偵錯. 或許你會問,那不就需要把Visual Studio 2010裝在Windows Server上了,其實新版的SharePoint 2010是可以裝在Windows 7上面的,對開發者來說相當的方便.

進入編輯畫面後,選到ASCX檔並切換到設計檢視畫面,我們可以把工具箱內的控制像拖放到畫面區上,在這裡我們放入一個按鈕與一個GridView控制項,我把按鈕取名為btnDateTime,GridView取名為gvResult,我想要做的Demo是按下按鈕後,GridView內就新增一筆按下的時間資料顯示在最上面. 所以接下來在按鈕上按兩下我們即可撰寫Code Behind的事件處理函式了. 當然我們要有一個List去存放時間資料,並且把它放在ViewState內.所以在Page_Load事件中撰寫了一個IsPostBack的判斷式,不是IsPostBack時就把ViewState["Data"]給建立起來,型別是 List<DateTime>. 然後在btnDateTime_Click事件中,把DateTime.Now的值加入到ViewState["Data"]內,之後用Linq把資料排序一下,新的資料放最上面,當做gvResult的DataSource,做DataBind()處理.

程式碼撰寫完後,直接按下功能表上的執行按鈕去執行,我們也可以設定斷點,讓WebPart執行時,可以停下來偵錯.第一次的執行Vistual Studio 2010跟以前一樣會問你是否要將Web.Config的偵錯選項開啟,在這裡我們選擇開啟,然後你就會看到測試的SharePoint 2010網站也被開起來了.

網站開起來後,我們需要進入頁面編輯模式,然後加入剛才做的WebPart.新的WebPart會暫時被放在Custom類別內.

加入新的WebPart後,我們可以按下剛才製做的按鈕,這時程式會在Visual Studio 2010內設定的斷點停下來讓我們進行偵錯.偵錯無誤的話,我們可以取消斷點,反覆的按下按鈕,這時我們就會看到時間的資料一筆筆被加入.

是不是很簡單,就完成一個WebPart了. 當然這只是在開發環境的上的測試,後續的包裝與部署到正式環境,還有一些細節要注意,部過Visual Studio的專案都幫我們準備好了,我們可以將Feature節點下的資料夾改名字,成為我們要顯示的Feature名稱,然後進入去修改 Feature所要包含與啟動的項目,在這裡我們只會有一個WebPart,相關描述WebPart安裝啟動的資料 Element.xml, .WebPart檔與ASCX檔案也都會準備好,接下來選好Feature的範圍到Site,然後調整好Package內相關的WSP檔案設定,就可以編譯包裝好 WSP檔,拿到正式環境去啟動的.可以說比起SharePoint 2007是相當的容易. 也相信對ASP.NET開發者投入SharePoint 2010開發會變得更輕鬆愉快了.

[SharePoint 2010] Visual Studio 2010內撰寫視覺化WebPart超簡單的更多相关文章

  1. MOSS 2010:Visual Studio 2010开发体验(14)——列表开发之事件接收器

    转:http://boke.25k5.com/kan141919.html 通过前面几篇,我们已经完成了内容类型,列表定义,列表实例g 8h"@的开发.本篇继续讲解列表中的一个重要环节- ...

  2. Creating a SharePoint BCS .NET Connectivity Assembly to Crawl RSS Data in Visual Studio 2010

    from:http://blog.tallan.com/2012/07/18/creating-a-sharepoint-bcs-net-assembly-connector-to-crawl-rss ...

  3. Creating SharePoint 2010 Event Receivers in Visual Studio 2010

    转:http://msdn.microsoft.com/en-us/library/gg252010(v=office.14).aspx Summary:  Learn how to create a ...

  4. SharePoint 2010中使用Visual Studio 2010进行方便快速的Web Part开发

    转:http://www.cnblogs.com/fatwhale/archive/2010/02/24/1672633.html 在Visual Studio 2010中,  已经集成了用于Shar ...

  5. 在 Visual Studio 2010 中创建 SharePoint 2010 事件接收器

    Microsoft Visual Studio 2010 提供了一个可用于生成事件接收器的项目类型,事件接收器会在 Microsoft SharePoint 2010 网站上选择事件之前或之后执行操作 ...

  6. 用C#语言在Visual Studio 2010里开发一个自定义的PowerShell Cmdlet

    1. 打开Visual Studio 2010 2. 新建一个基于Class Library的项目 3. 给项目起个名字然后OK 4. 为项目添加下列Reference System.Manageme ...

  7. 《转》Visual Studio 2010 终极定制安装精简方法

    打开VS2010安装目录下的 Setup 文件夹,找到 baseline.dat 文件和 vs_setup.pdi 文件还有一个 locdata.ini 文件,是对应的. 这些都是文本文件,用记事本就 ...

  8. 使用Visual Studio 2010 创建简单的Silverlight应用程序

    使用Visual Studio 2010 创建简单的Silverlight应用程序 Silverlight是创建动态的引人的RIAs(Rich Internet Application)的新方法.这里 ...

  9. 【转】让开发变得简单一点- Visual Studio 2010几个让人印象深刻的新功能

    原文网址:http://xhinker.blog.51cto.com/640011/313055/ 引言 "我们的目标,不仅仅是做出几个新功能,而是要回答一个问题:'如何让现在的开发人员生活 ...

随机推荐

  1. EF Code First 注意事项

    1.异常“实体类型不存在于上下文中” Context类中不包含该实体类型的DbSet,有可能关联关系没有正确设置

  2. dbcp2连接池获取数据库连接Connection

    一.先来看看手工创建的方式 public static Connection getConnection() { Connection conn = null; try { Class.forName ...

  3. unity3D中使用Socket进行数据通信(二)

    上一篇博客主要介绍了使用socket搭建服务端和client程序,这一篇来说说socket的数据传输,我们使用socket的目的是解决点对点之间的数据传输,之前提到了socket中一个重要的概念:po ...

  4. Lintcode---翻转二叉树

    翻转一棵二叉树 您在真实的面试中是否遇到过这个题? Yes 样例 1 1 / \ / \ 2 3 => 3 2 / \ 4 4 思路:依旧采用递归的思路,判断特殊条件后,先交换根节点的左右孩子, ...

  5. RVM(ruby version manage)安装指南

    一.安装需要3步gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \c ...

  6. 高性能网络 | 你所不知道的TIME_WAIT和CLOSE_WAIT

    你遇到过TIME_WAIT的问题吗?   我相信很多都遇到过这个问题.一旦有用户在喊:网络变慢了.第一件事情就是,netstat -a | grep TIME_WAIT | wc -l 一下.哎呀妈呀 ...

  7. C++重载IO操作符

    操作符的重载有一定的规则,而IO操作符必须重载为普通函数,且应该声明为类的友元函数.我试了,非友元也可以,但是必须提供访问成员变量的函数,所以,出于效率的考虑还是应该定义为友元. 规则如下: 1.  ...

  8. c#用picturebox显示多页TIF

    //引用 using System.Drawing; using System.Drawing.Imaging; //以下是方法 private Bitmap myImage = null; priv ...

  9. 理解vertical-align或“如何竖向居中”<转>

    在各种技术论坛里经常会有这样的问题提出,“我如何能将这个东西竖向居中?”这个问题通常会跟随着这样一句话,“我使用了 vertical-align:middle,但是不管用! ” 这个问题其实有三个层面 ...

  10. java定时调度器解决方案分类及特性介绍

    什么是定时调度器? 我们知道程序的运行要么是由事件触发的,而这种事件的触发源头往往是用户通过ui交互操作层层传递过来的:但是我们知道还有另外一种由机器系统时间触发的程序运行场景.大家想想是否遇到或者听 ...