Nyckelord: SharePoint, Google Search, SmartPart, Ajax
1. Ladda ner och installera SmartPart (ReturnOfSmartPartv1_3.zip)
http://www.codeplex.com/smartpart/Release/ProjectReleases.aspx?ReleaseId=10697
2. Aktivera SmartPart i Site Collection Features
3. Detta kommer att ge dig två web Parts, ena är för asp.net applikationer och den andra är för AJAX applikationer.
4. Nu har du en fungerande SmartPart som kan innehålla vilken asp.net applikation som helst.
Vill du dessutom ha AJAX stöd då måste du göra följande:
1. Ladda ner och installera asp.net 2.0 AJAX Extension
http://www.asp.net/AJAX/downloads/
2. Ladda ner Search Integration för Google och installera enligt anvisning
http://www.codeproject.com/KB/sharepoint/Search-Integaration.aspx
3. Nu kommer det jobbigaste momenten, ta en kopia av din web.config som ligger under rooten för din webbapplikation, typ C:\Inetpub\www\wss\virtualdirectories\80 och spara detta som web.config.org
4. Lägg till följande avsnitt: i din web.config fil
A. Strax efter <configuration><configSections>
Lägg till följande:
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere" />
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
</sectionGroup>
</sectionGroup>
</sectionGroup>
B. Strax innan </pages>
Lägg till följande:
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
C. Strax innan </assemblies>
Lägg till följande:
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
D. Strax efter <httpHandlers>
Lägg till följande:
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
E. Strax efter <httpModules> <clear />
Lägg till följande:
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
F. Strax innan </SafeControls> Lägg till:
<SafeControl Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" TypeName="*" Safe="True" />
G. Sist men inte minst, innan </configuration>
Lägg till följande:
system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated" />
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
</system.webServer>
Nu behöver du eventuellt starta om SharePoint servern, eller åtminstone köra en IISRESET.
Kopiera cs-filen och ascx-filen till mappen C:\Inetpub\www\wss\virtualdirectories\80\UserControls (OBS! mappen Usercontrols finns inte och behöver skapas manuellt)
OBS! HiddenField ID:et i filen SharepointGoogleSearchIntegration.ascx ska ändras till följande:
<asp:HiddenField ID="HiddenField1" runat="server" />
Blir
<asp:HiddenField ID="hdnField" runat="server" />
Lägg till en web part som heter SmartPart Ajax till din söksidas resultat sida.
Välj sedan rätt User Control, spara och starta en sökning
Resultatet blir som nedan:
Njut! :)
No comments:
Post a Comment