我是 Silverlight 2.0 的新手,实际上我正在尝试在 Sharepoint 2007 中将 Silverlight 部署为 webpart。
我已经完成了以下安装:
- VS 2008 与 SP1
- Silverlight 2.0 SDK 和 exe
- VS 2008 的 Silverlight 工具
- 苔藓植物 2007
我已经创建了示例 Silverlight 应用程序并从解决方案的 bin 目录中获取了 xap 文件。
然后我编写了一个标准的 Sharepoint webpart,其中引用了dllWeb.Extensions
和Microsoft.Silverlight
dll:
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 System.Web.UI.SilverlightControls;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using Microsoft.SharePoint.WebPartPages;
namespace SLWeb_Part1
{
[Guid("c890f832-05d2-4724-ae25-5f34c827c6c2")]
public class SLWeb_Part1 : System.Web.UI.WebControls.WebParts.WebPart
{
public SLWeb_Part1()
{
}
[WebBrowsable(true),
Personalizable(PersonalizationScope.User),
WebDescription("Location of the Silverlight XAP package"),
WebDisplayName("XAP Location")]
public string XAPSource { get; set; }
[WebBrowsable(true),
Personalizable(PersonalizationScope.User),
WebDescription("Silverlight Controld ID "),
WebDisplayName("Control ID")]
public string ControlID { get; set; }
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);
if (scriptManager == null)
{
scriptManager = new ScriptManager();
this.Controls.Add(scriptManager);
}
}
protected override void CreateChildControls()
{
base.CreateChildControls();
Silverlight sl = new Silverlight();
sl.Source = XAPSource;
sl.ID = ControlID;
sl.Width = new Unit(400);
sl.Height = new Unit(400);
this.Controls.Add(sl);
}
}
我也将其部署到了 Sharepoint 站点,然后我在 Sharepoint 站点的web.config
文件中创建了一个条目,以包含 Silverlight 和 Web.Extension 程序集,如下所示:
<add assembly="System.Web.Silverlight, Version=2.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
然后我application/x-silverlight-app
在 IIS 中包含了 Web 应用程序的 MIME 类型。
做完这一切之后……我可以像往常一样浏览网站,但是我看不到 Silverlight 组件正在运行……而且它也没有抛出任何错误……
谁能帮我尽快解决这个问题?我错过了配置中的任何步骤吗?
提前致谢。