我正在使用 Visual Studio 2008,并已下载 VSeWSS.exe 1.2,以启用 Web 部件开发。我是 SP 开发的新手,并且已经对不同版本的 SP 和 VS 附加组件的数量感到困惑。这个特殊的问题出现了,这凸显了我的困惑。
我选择了添加 -> 新项目 -> Visual C# -> SharePoint-> Web Part,接受默认值,然后 VS 创建了一个项目,主文件为 WebPart1.cs
using System;
using System.Runtime.InteropServices;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using Microsoft.SharePoint.WebPartPages;
namespace WebPart1
{
[Guid("9bd7e74c-280b-44d4-baa1-9271679657a0")]
public class WebPart1 : System.Web.UI.WebControls.WebParts.WebPart
{
public WebPart1()
{
}
protected override void CreateChildControls() // <-- This line
{
base.CreateChildControls();
// TODO: add custom rendering code here.
// Label label = new Label();
// label.Text = "Hello World";
// this.Controls.Add(label);
}
}
}
我正在关注的书,Essential SharePoint 2007,作者 Jeff Webb,默认项目具有以下内容 -
using System;
<...as previously>
namespace WebPart1
{
[Guid("9bd7e74c-280b-44d4-baa1-9271679657a0")]
public class WebPart1 : System.Web.UI.WebControls.WebParts.WebPart
{
// ^ this is a new style (ASP.NET) web part! [author's comment]
protected override void Render(HtmlTextWriter writer) // <-- This line
{
// This method draws the web part
// TODO: add custom rendering code here.
// writer.Write("Output HTML");
}
}
}
我担心的真正原因是,在本书的这一章中,作者经常提到“旧式”Web 部件和“新式”Web 部件之间的区别,正如他对 Render 方法的评论中所指出的那样。
发生了什么?为什么我的默认 Web 部件的签名与作者不同?