标签: wsp

如何使用WSP将Asp.net Web应用程序部署到Sharepoint 2010站点

假设我创建了一个自定义Web应用程序,其中包括:

  • 几个汇编DLL:Web应用程序,业务逻辑,数据服务
  • 多个aspx页面和使用它们的ascx自定义控件
  • 自定义配置部分
  • 自定义HTTP模块

通常的东西或多或少.

我想将它部署到某个子文件夹下的特定sharepoint站点.因此,如果我通过http:// myserver:90 /访问我的sharepoint站点(因为我没有使用sites/some_site),我希望我的应用程序可以在http:// myserver:90/webapp下使用

我可以手动添加一个虚拟文件夹(不是应用程序因为我需要访问一些Sharepoint站点的数据)到IIS中的sharepoint站点并手动编辑站点的web.config文件来注册我的HTTP模块并添加我的自定义配置部分以及将我的DLL放入GAC或将它们放在_app_bin中(所以我没有CAS的问题),但我认为这不是一件好事,因为这个Web应用程序可能部署在一个不应该/不能的环境中是可能的.

所以我想我可以使用Visual Studio 2010构建一个WSP并以这种方式部署它.但我没有足够的经验这样做.

我创建了一个新的sharepoint 2010项目.有没有办法可以一次添加所有不可执行的应用程序文件(aspx,ascx)?我已经看到了WSP包的高级选项卡,我可以将我的DLL添加到bin文件夹或GAC.我不知道我是否还需要添加任何安全控制并注册某些类?

所以我想我需要一些非常详细和解释性的指导.

asp.net deployment visual-studio-2010 wsp sharepoint-2010

8
推荐指数
1
解决办法
1万
查看次数

调试时为什么我的项目组件在包中丢失了?

我有一个SharePoint项目,我已经调试了一段时间没有问题.

今天我在项目的唯一功能中添加了一个功能接收器.我还没有改变Visual Studio默认添加的空接收器类的任何内容.

"Package"命令现在生成一个包,其中包含我的项目的DLL文件(正如您所期望的那样 - 添加一个功能接收器不应该改变这一点).

然而,当我调试,生成的包并没有包括我的项目的DLL文件,并部署努力失败,出现以下错误:

部署步骤"添加解决方案"发生错误:无法为功能"ABC_XYZ功能"加载接收器程序集"ABC,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 2377fad544a7c307"(ID:dca34989-a2f2-413b-b5c4-958e0bbb84ef ):System.IO.FileNotFoundException:无法加载文件或程序集'ABC,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 2377fad544a7c307'或其依赖项之一.该系统找不到指定的文件.文件名:'ABC,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 2377fad544a7c307'in System.Reflection.Assembly._nLoad(AssemblyName fileName,String codeBase,Evidence assemblySecurity,Assembly locationHint,StackCrawlMark&stackMark,Boolean throwOnFileNotFound,Boolean forIntrospection)在System.Reflection.Assembly.Asombly.Load的System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef,Evidence assemblySecurity,StackCrawlMark&stackMark,Boolean forIntrospection)中的System.Reflection.Assembly.InternalLoad(String assemblyString,Evidence assemblySecurity,StackCrawlMark&stackMark,Boolean forIntrospection) (字符串assemblyString)在Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

警告:装配绑定日志记录已关闭.要启用程序集绑定失败日志记录,请将注册表值[HKLM\Software\Microsoft\Fusion!EnableLog](DWORD)设置为1.注意:程序集绑定失败日志记录会导致一些性能损失.要关闭此功能,请删除注册表值[HKLM\Software\Microsoft\Fusion!EnableLog].

删除功能接收器允许我再次调试没有问题,但一旦我重新添加功能接收器问题就会返回.

我已经尝试过清理和重建,然后进行调试,但除非/直到我删除功能接收器,否则错误不会消失.

当我使用"Package"命令时,为什么我的项目程序集被包含在包中,而不是当我使用"Start Debugging"命令时,并且添加功能接收器会导致这种情况发生?

deployment assembly-resolution wsp sharepoint-2010 feature-receivers

8
推荐指数
2
解决办法
1万
查看次数

SharePoint 2007/2010部署方法

我已经为SharePoint 2007/2010开发了几年了.此时我意识到没有公司对新站点使用相同的部署方法.我想知道部署什么是"最佳实践".

这是我用过的方法:


1 - 避免使用WSP方法

  • 使用SharePoint GUI界面在DEV中创建站点(创建子站点,列表,库,页面等).
  • 通过SharePointDesigner自定义一些小问题.
  • 完成后,我们使用stsadm -export打包DEV,然后使用stsadm -import将其移植到QAPROD.
  • 当我们需要修改现有站点时,我们创建一个Console应用程序(.exe)进行必要的修改,在QA上测试然后在PROD上运行它(并将每个操作记录在一个单独的txt文件中).
  • 我们仅使用WSP来部署Webparts,EventReceivers或将在不同站点上使用的东西.

2 - 用WSP方法做所有事情

  • 每当我们有一个新网站要创建时,我们都会使用配置WSP通过代码创建所有内容(创建子网站,列表,库,页面等).
  • 我们通过创建一个新的空SiteCollection进行部署,然后安装配置WSP并激活它以创建所有内容.
  • 当我们需要对站点进行修改时,我们会修改WSP,以便检查代码中是否存在某些内容并修改需要相应更改的内容.

我个人(强烈)更喜欢方法#1,因为我相信它更简单,更快.但是我想知道其他一些意见,在这些情况下最好的做法是什么?我已经使用方法#1多年了,它实际上工作得非常好.

谢谢

sharepoint sharepoint-designer sharepoint-2007 wsp sharepoint-2010

5
推荐指数
1
解决办法
942
查看次数

SharePoint wsp解决方案:如何在全球部署

我创建了一个wsp包并将其添加到

管理中心>运营>解决方案管理

使用addsolutionstsadm 的命令.当我单击Deploy Solution菜单时,它会转移我部署到解决方案页面.在此页面中,在"Deploy To?"中 部分,它显示了一个下拉列表,其中包含"所有内容Web应用程序"等条目.

我想全局部署我的解决方案,以便它适用于部署后创建的所有新Web应用程序.我见过WSPs"Deploy To?" 部分仅显示"此解决方案全局部署"而不显示下拉列表的消息.

deployment sharepoint stsadm global wsp

5
推荐指数
1
解决办法
2万
查看次数

使用msbuild创建wsp文件

当我右键单击一个共享点项目并选择“部署”时,将生成一个wsp文件。

我现在想自动化buildprocsses。我已经使用nant来调用MsBuild。这将构建我的csproj文件。

如何从中获取wsp文件?我读了一些有关ddf文件的文章,但在解决方案中看不到。

msbuild wsp sharepoint-2010

3
推荐指数
1
解决办法
1785
查看次数

将多个功能打包到单个WSP解决方案文件中

我正在开发一个sharepoint功能,其中包括两个列表定义,2个webpart,一个功能接收器程序集和一个InfoPath表单.

我必须使用WSPBuilder打包这些,并且要求将所有这些功能打包到一个WSP解决方案文件中.

现在,WSP构建器需要特定文件夹结构中的部署文件,与12 Hive of sharepoint相同.

我的问题是我的所有功能都是单独开发的,由多个项目文件组成,这些文件不一定在同一个文件夹结构中.

如何使用WSP Builder将多个功能打包到单个WSP解决方案中?

sharepoint moss sharepoint-2007 wspbuilder wsp

3
推荐指数
2
解决办法
6095
查看次数

如何使用解决方案(wsp)将resx文件放在App_GlobalResources文件夹中?

我为SharePoint 2007制作了很多解决方案(wsp),我几乎已经自动完成了所有必需的安装步骤,但有一件事我无法自动化.

如何制作将资源(resx)文件放在虚拟应用程序的App_GlobalResources文件夹中的解决方案?

提前致谢.

sharepoint resources resx sharepoint-2007 wsp

3
推荐指数
1
解决办法
7033
查看次数

SharePoint解决方案包部署随机失败

在解决方案部署和/或功能激活期间,我偶尔会看到此错误...

复制此文件失败.此操作使用无法联系的SharePoint管理服务(spadmin).如果停止或禁用该服务,请启动它并再次尝试操作.

以下是用于部署的PowerShell脚本:

$programfiles_path = $null
$stsadm_path = $null
$url = $null
$solution = $null
$feature = $null
$appPoolName = $null



$url = "http://" + ${env:COMPUTERNAME}
$programfiles_path = ${env:ProgramW6432}

if ($programfiles_path -eq $null)
{
    $programfiles_path = ${env:ProgramFiles}
}

$stsadm_path = $programfiles_path + "\common files\microsoft shared\web server extensions\12\bin\stsadm.exe"

if(!(test-path $stsadm_path))
{
    echo "stsadm.exe was not found: $stsadm_path"
    exit -1
}


ECHO "***********************************"
ECHO "*** Contoso.Common.SolutionPackage ***"
ECHO "***********************************"

$solution = "Contoso.Common.SolutionPackage.wsp"

ECHO "*** add the solution ***"
& $stsadm_path -o addsolution …
Run Code Online (Sandbox Code Playgroud)

sharepoint stsadm moss solution-deployment wsp

1
推荐指数
1
解决办法
4124
查看次数