Pergunta

I foram convidados a desenvolver algumas usercontrols em ASP.NET que a vontade em um momento posterior ser puxado em um site do SharePoint como partes da web. Eu sou novo para o SharePoint e não terá acesso a um servidor SharePoint durante o tempo que preciso para fazer o protótipo destas partes.

Alguém sabe de quaisquer razões que esta abordagem não vai funcionar? Se esta abordagem não é recomendada, o que outras opções ser? Todas as sugestões sobre um recurso / tutorial sobre o que considerar ao desenvolver uma parte da web ASP.NET com o SharePoint em mente?

Graças

Editar: 12/31/2008 Eu finalmente marcou uma resposta a esta. Levei um tempo para perceber que vai a rota SharePoint imediatamente, embora doloroso no início, é a melhor maneira de ir sobre ele. A imagem VPC livre faz começar criado para desenvolver relativamente indolor.

Enquanto você pode, como eu fiz, desenvolver partes da Web em ASP.NET sem SharePoint, quando se trata de desenvolvimento e implantação de aplicativos SharePoint você não aprendeu uma coisa, só empurrou a curva de aprendizagem fora em um momento em que você pensa você é feito, (e provavelmente já informou as partes interessadas para esse efeito). Para atrasar a curva de aprendizagem SharePoint não faz você ou seu projeto quaisquer favores, e seu produto final será melhor para a experiência que você ganha ao longo do caminho.

Foi útil?

Solução

Se é uma coisa muito curto prazo, a Microsoft tem a imagem VPC avaliação um WSS por tempo limitado:

VPC Avaliação

WSS3 SP1 desenvolvedor imagem

Isso irá ajudar a começar, se você não tem tempo / recursos para montar sua imagem VPC própria agora.

Outras dicas

ASP.NET Web Parts trabalho no SharePoint o mesmo que eles trabalham em ASP.NET. Essa é a rota que eu levaria (controle personalizado que deriva do ASP.NET Web Part classe ). Isso irá aliviar qualquer exigência de realmente desenvolver no servidor SharePoint.

O único problema que você vai encontrar é que você não será capaz de tirar partido do quadro SharePoint. Se você está fazendo nada avançou em SharePoint este é um grande negócio. No entanto, o SharePoint é ASP.NET além de algumas funcionalidades adicionais, então qualquer coisa que você pode desenvolver usando o System.Web.UI.WebControls.WebPart classe deve um grande trabalho no SharePoint.

Algumas considerações que ajudarão a aliviar sua dor como você ir de puro ASP.NET para SharePoint:

  • Se você pode colocar tudo dentro de uma única montagem, implantação será mais fácil
    • tentar colocar tudo que você precisa para as DLL que são implantados para o SharePoint
    • uso de montagem recursos para JS, CSS e arquivos de imagem incorporar, se necessário
  • nome forte do assembly que você está construindo
    • A maioria SharePoint implantações acabar no GAC e um nome forte será necessária

Aqui está um post relevante; Desenvolvimento Básico web Parts em SharePoint 2007

Eu acho que a maneira mais fácil é usar o SmartPart para SharePoint do CodePlex. A descrição do projeto diz que "A parte web do SharePoint que pode hospedar qualquer controle de usuário web ASP.NET . Criar suas peças web sem escrever código!", Que eu acho que é exatamente o que você quer fazer.

Configurar minha máquina para desenvolver para Sharepoint me levou um par de dias.

http: //weblogs.asp.net/erobillard/archive/2007/02/23/build-a-sharepoint-development-machine.aspx

construir e testar o controle como você faria para um site .net típico. Solução 1 = os controlos Solução 2 = site fictício para hospedar os controles.

Implantação em Sharepoint:

Você precisará assinar os controles.

Drop the DLL assinado no GAC no servidor do SharePoint (Windows / montagem)

Mark o controle como seguro no web.config raiz servidor virtual no site do SharePoint.

i.

<SafeControl Assembly="MyControl, Version=1.0.0.0, Culture=neutral, PublicKeyToken=975cc42deafbee31" Namespace="MyNamespace" TypeName="*" Safe="True" AllowRemoteDesigner="True" />

Registrar o componente em sua página do SharePoint:

<%@ Register Namespace="MyNamespace" Assembly="MyControl, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=975cc42deafbee31" TagPrefix="XXXX" %>

Use o controle:

<XXXX:ClassName runat="server" Field1="Value1" Field2="Value2" ....></XXXX:Classname>

Se você precisar substituir o controle usando o mesmo número de versão, então você precisa reciclar o pool de aplicativo para recarga.

Se você não precisa fazer específico SharePoint-nada (ou seja acessando listas, outros webparts, etc), então você pode construir seu webpart apenas como um webpart regulares (derivado de System.Web.UI.WebControls.WebParts.WebPart classe) e irá funcionar quando adicionado a um site do SharePoint.

Você precisa ter acesso a um servidor SharePoint, porque você não pode simular o seu webpart sem ele, você tem que implantá-lo no site do SharePoint para testar se está funcionando. depuração também seria uma dor. ou você pode usar SmartPart, é um webpart que atua como um wrapper para seus controles de usuário para exibição em um site do SharePoint.

Você não precisa SharePoint para desenvolver WebParts. Você pode desenvolver webparts por herança da System.Web.UI.WebControls.WebParts. E esta é a forma preferível de criação de web parts menos que você queira as seguintes características como

* Connections between web parts that are outside of a Web Part zone

* Cross page connections

* A data caching infrastructure that allows caching to the content database

* Client-side connections (Web Part Page Services Component)

No caso em que você precisa para desenvolver webparts por herança de Microsoft.SharePoint.WebPartPages.WebPart. Você pode encontrar informações mais úteis aqui

Existe alguma razão específica para que seus controles de usuário deve ser implantado como partes da web? É perfeitamente viável para implantar controles de usuário diretamente para sites do SharePoint, quer através dos CONTROLTEMPLATES pasta no 12 colméia ou para um local no diretório virtual aplicativo web, que você pode fazer referência a partir de páginas da web usando o SharePoint Designer.

Se, contudo, a exigência parte web é crucial, então eu recomendo smartpart para Sharepoint como já mencionado.

Na verdade, Web Parts deve sempre ser implantado para a pasta bin do sharepoint devido à sua natureza 'abusivo'. Sempre implantar partes da web para o lixo, se possível, e escrever seu próprio CAS e incluí-lo em seu manifesto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top