新一代的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. C# 获取文件MD5、SHA1

    /// <summary> /// 计算文件的 MD5 值 /// </summary> /// <param name="fileName"> ...

  2. XMLDocument转为String 摘录

    public static string FormatXmlString(string xmlString) { XmlDocument document = new XmlDocument(); d ...

  3. PHP 5.3以上版本推荐使用mysqlnd驱动

    什么是mysqlnd?mysqldnd(MySQL native driver)是由PHP源码提供的mysql驱动连接代码.它的目的是代替旧的libmysql驱动. 传统的安装php的方式中,我们在编 ...

  4. Spring Boot中使用Spring-data-jpa

    在实际开发过程中,对数据库的操作无非就“增删改查”.就最为普遍的单表操作而言,除了表和字段不同外,语句都是类似的,开发人员需要写大量类似而枯燥的语句来完成业务逻辑. 为了解决这些大量枯燥的数据操作语句 ...

  5. 关于 AngularJS 的数据绑定

    单向绑定(ng-bind) 和 双向绑定(ng-model) 的区别 ng-bind 单向数据绑定($scope -> view),用于数据显示,简写形式是 {{}}. 1 <span n ...

  6. action(二)

    RemoveSelf :消失 CCFiniteTimeAction* action = CCSequence::create( CCMoveBy::create( , ccp(,)), CCRotat ...

  7. Selenium - Webdriver API /ActionChains API

    一.控制浏览器 1.1 控制浏览器窗口大小 # 获取当前浏览器的大小  driver.get_window_size() # 通过像素设置浏览器的大小  driver.set_window_size( ...

  8. cocos2d-x聊天气泡

    用cocos2d-x做聊天气泡在网上搜索了一下提示用CCScale9Sprite,这个类可以不缩放边角只 缩放中心,正好符合气泡的要求. 说一下思路,头像都是用cocosbuilder做的ccb,在代 ...

  9. 基于Xilinx的Synthesize

    所谓综合.就是讲HDL语言.原理图等设计输入翻译成由与.或.非们和RAM.触发器登记本逻辑单元的逻辑连接(即网表).并依据目标和要求(约束条件)优化生成的逻辑连接. ISE-XST XST是Xilin ...

  10. avrdude: stk500_getsync(): not in sync: resp=0x00

    avrdude: stk500_getsync(): not in sync: resp=0x00错误提示在arduino IDE中非常常见,这个错误代表着就是无法通过USB口与arduino控制板进 ...