Pregunta

He creado un modelo BDC e implemento a través de una función. La característica debe tener un SiteURL como se especifica en la función XML a continuación. Sin embargo, cuando muevo la característica de Say the Development to Prueba, aceptación o entorno de producción, el SiteUrl causará un conflicto y el paquete WSP no se instalará.

Ahora, esto no es muy útil ya que tengo que reempaquetar cada vez que muevo el entorno o el juguete con URL / mapeos de acceso alternativos en los entornos. Mi pregunta es ¿hay algún enfoque útil para este problema? Hasta ahora, el único enfoque que se me ocurre es un script de compilación personalizado. Seguramente debe haber algo más práctico ...

<Feature xmlns="http://schemas.microsoft.com/sharepoint/" Description="This feature installs the BDC Models for the Business Connectivity Service" Id="83af2a77-02f5-4391-8bf5-917addc8029d" ReceiverAssembly="Microsoft.Office.SharePoint.ClientExtensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" ReceiverClass="Microsoft.Office.SharePoint.ClientExtensions.Deployment.ImportModelReceiver" Scope="Farm" Title="Foobar.SharePoint.BCS BDC Models">
  <Properties>
    <Property Key="SiteUrl" Value="http://sparked-dev:9999" />
    <Property Key="IncrementalUpdate" Value="true" />
    <Property Key="ModelFileName" Value="SmartAppBDCModel\SmartAppBDCModel.bdcm" />
    <Property Key="SmartAppBDCModel" Value="BdcAssemblies\Foobar.SharePoint.BCS.dll" />
  </Properties>
  <ElementManifests>
    <ElementFile Location="SmartAppBDCModel\SmartAppBDCModel.bdcm" />
    <ElementFile Location="BdcAssemblies\Foobar.SharePoint.BCS.dll" />
  </ElementManifests>
</Feature>
¿Fue útil?

Solución

Aparentemente Este es un error. Una posible solución es usar http: // localhost/ Como URL, pero creo que esto aún puede ser sobrescribido por VS cuando luego abre el proyecto. En ese caso, una acción de construcción personalizada puede ser el camino a seguir por el tiempo.

Otros consejos

También hice ese problema y encontré la respuesta en esta publicación:http://www.silver-it.com/node/92.

Propone principalmente lo siguiente:

  • Elimine la asociación al receptor de eventos del modelo (propiedad "Reeiver" del proyecto BDC)
  • Editar la función existente que implementa el modelo BDC, agregue un receptor de evento.
  • Cree una nueva clase que se deriva de ImportModelReceiver (llamemos a CustomBDCDePloyment)
  • En características de su característica, establezca la propiedad (de la instancia de SPFeateReCeiverProperties que se pasa en el método que seeCactivated) SiteUrl al valor que necesita (obtenga desde donde desee). Cree una instancia de su clase personalizada Capeed anteriormente (CustomBDCDePloyment) y pase la instancia modificada de SPFeateReCeiverProperties a su método característico.
  • En el destacado de la tarea, logre más o menos lo mismo que en caracteres. Establezca la propiedad SiteUrl en el valor que necesita y pase las propiedades para que se produzca una nueva instancia de CustomBDCDePloyment.

eso es todo.

Si está buscando actualizar el conector BDC DLL programáticamente a través del código, verifique este enlace: -

http://blog.techperspect.com/2013/12/how-to-update-bdc-bcs-custom-connector.html

Licenciado bajo: CC-BY-SA con atribución
scroll top