我有一个带有 c# + sql server 2008 连接性 + css + javascripts + ajax 的 asp.net 网站。我有一个解决方案。我想在 sharepoint 下运行这个站点。我必须做些什么来整合这个?
3 回答
您需要创建一个子目录buffer
来阻止/删除从 .net 2 / 3.5 框架继承的项目,然后在此下创建您的应用程序。
假设您将buffer
应用程序命名为apps
,并且调用了您的自定义 .NET 4.0 应用程序myapp
,则生成的应用程序将位于:
http://[sharepoint-site]/apps/myapp/
这个怎么做:
apps
在 SharePoint 网站的根目录下 创建一个子目录进入
apps
目录的安全并添加everyone
读取权限在 IIS 中,将其转换为应用程序并选择您的 SharePoint 网站在其下运行的相同应用程序池
在 下创建一个 web.config
/apps/
,这将阻止/删除 SharePoint 内容(代码块见下文)在(例如/apps/myapp/)下创建您的
myapp
目录apps
在 IIS 中,进入应用程序池,创建一个新的 AppPool,
MyApp .NET v4.0
进入
Advanced Settings
>Identity
并添加您的 SharePoint 网站正在使用的相同 AD 域用户帐户凭据仍在 IIS 中,返回
myapp
并转换为应用程序并选择MyApp .NET v4.0
AppPool复制你的代码,你就完成了!
目录下的 web.config 文件apps
:
<?xml version="1.0"?>
<configuration>
<system.web>
<httpHandlers>
<remove path="Reserved.ReportViewerWebControl.axd" verb="*" />
</httpHandlers>
<httpModules>
<clear/>
</httpModules>
<webParts>
<transformers>
<clear />
</transformers>
</webParts>
</system.web>
<system.webServer>
<handlers>
<remove name="OwssvrHandler" />
<remove name="ScriptHandlerFactory" />
<remove name="svc-Integrated" />
<remove name="ScriptHandlerFactoryAppServices" />
<remove name="ScriptResource" />
<remove name="JSONHandlerFactory" />
<remove name="ReportViewerWebPart" />
<remove name="ReportViewerWebControl" />
</handlers>
<modules>
<!-- depending on any customizations, you may have to add/remove items from this list as needed -->
<remove name="SPRequestModule" />
<remove name="ScriptModule" />
<remove name="SharePoint14Module" />
<remove name="StateServiceModule" />
<remove name="PublishingHttpModule" />
<remove name="RSRedirectModule" />
</modules>
<httpErrors errorMode="Detailed"></httpErrors>
</system.webServer>
</configuration>
有几种选择。第一个是一个简单的 IFrame webpart,它将整个应用程序托管在一个框架中。页面查看器 webpart 内置在 sharepoint 中,并为您执行此操作。
第二个是使用应用程序页面。我没有这样做,但这里有一篇关于它们的 MSDN 文章:
http://msdn.microsoft.com/en-us/library/bb418732.aspx
第三个是将您的应用程序的控件嵌入到 Webparts 中,然后将它们放置到共享点页面上的 Web 部件区域中。
您采用的方法取决于您的应用程序的大小以及您必须集成它的时间。IFrame 方法快速而肮脏,而 webpart 方法更加原生,但对于大型应用程序可能需要很长时间。
我没有任何运气试图让另一个网站与 SharePoint 共存。您是否无法在自己的网站中创建自己的网站,使用自己的应用程序池,然后从 SharePoint 链接到它?