通过Sharepoint 2007 WSP包将文件安装到GAC

时间:2011-06-03 17:14:45

标签: sharepoint deployment

我正在Visual Studio 2010中创建一个WSP包,以将我的功能部署到Windows 2003 Server上的sharepoint 2007环境中。目前,引用包含我编写的代码的程序集的xml文件是从GAC引用的。我想做的就是这样做,这个WSP文件会自动将dll添加到程序集中,然后引用它,以便正确安装该功能。这可能吗?如果是这样,这是怎么做到的?

我的ListManifest.xml文件如下:

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Receivers ListTemplateId="101">
    <Receiver>
        <Name>AddedEventHandler</Name>
        <Type>ItemAdded</Type>
        <SequenceNumber>10000</SequenceNumber>
        <Assembly>
            SPEventHandler, Version=1.0.0.0, Culture=neutral,
            PublicKeyToken=f2e7de6c4a924a03
        </Assembly>
        <Class>SPEventHandler.ItemAddedHandler</Class>
        <Data></Data>
        <Filter></Filter>
    </Receiver>
</Receivers>

如您所见,它引用了GAC中的SPEventHandler程序集,但我希望程序将我的DLL包含在程序集中,将其添加到GAC并引用它。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

您没有指定哪个版本的sharepoint,但这里有一篇关于如何在您的包中为sharepoint 2010包含额外程序集的文章

http://blog.mastykarz.nl/including-additional-assemblies-wsp-visual-studio-sharepoint-development-tools/

答案 1 :(得分:0)

解决方案:

如果您手动打包wsp,则需要将dll包含在DDF文件中, bin \ Debug \ MyFile.dll MyFile.dll 并将程序集包含在解决方案清单中,例如

<Assemblies>
  <Assembly DeploymentTarget="GlobalAssemblyCache" Location="MyFile.dll" />
</Assemblies>

MSDN Reference