SharePoint开发笔记-SharePoint2010添加ASP.NET应用程序

    大家可能在sharepoint开发webpart会引入一些asp.net的控件,这时候就会需要添加dll引用..下图所示CRSWebControls便是我添加的.

部署这个项目到sharepoint后.却出现了错误,如下图所示...

其实解决这个问题的方式不难...下面就进入主题

-------------------------------------------------------------------------------------------------

首先,先把需要用到的DLL文件拷贝到sharepoint网站下的_app_bin或者bin目录

当然如果你的dll有强签名,那可以拖到C:\Windows\assembly这里面来,类似于注册(不建议这样做)

这时候打开网站再看看是否出现错误,一般来说就不会出现错误了...当然也有例外..如果还报错就执行下面的步骤

----------------------------------------------------------------------------------

第一步,打开sharepoint网站web.config文件的<SafeControls></SafeControls>节点中添加以下(目的是把应用程序注册为安全类型)

<SafeControl Assembly="CRSWebControls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Namespace="CRSWebControls" TypeName="*" Safe="True" />


说明:其中CRSWebControls为应用程序的命名空间

第二步:删除页面的AutoEventWireup="true"属性(不自动绑定页面处理事件)

第三步:在Web.config 文件的<SharePoint>节点中的 <PageParserPaths> </PageParserPaths>
节点下增加一个虚拟路径

<PageParserPath VirtualPath="/*" CompilationMode="Always" AllowServerSideScript="true" IncludeSubFolders="true" />

声明此站点下所有文件允许服务器端事件,当然你也可以制定虚拟目录是那个文件夹,但是这个值 必须以 ~/ 或 / 开头,并且必须以文件名或 * 结尾。
(目的为允许服务器端事件的运行)

第四步:把web.config文件的enableSessionState属性设为true(如果此应用程序要使用到Session的话)

<pages enableSessionState="false" enableViewState="true" enableViewStateMac="true" validateRequest="false"
pageParserFilterType
="Microsoft.SharePoint.ApplicationRuntime.SPPageParserFilter, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c"
asyncTimeout="7">

第五步:在网站web.config文件的<SafeControls></SafeControls>节点中添加以下(目的是允许应用程序使用用户控件)

<SafeControl Src="~/document/*" IncludeSubFolders="True" Safe="True" AllowRemoteDesigner="True" />

说明:其中document是用户控件所在的文档库

posted on 2011-02-21 12:45  豆浆咖啡  阅读(2122)  评论(3编辑  收藏  举报