Usar propiedades xestionadas
Pode controlar cales dos seus compoñentes solución administrada son personalizables mediante propiedades xestionadas. Por defecto, todos os compoñentes de solucións personalizados son personalizables. Cada compoñente de solución ten unha propiedade Pódese personalizar (IsCustomizable
). Sempre que o valor desta propiedade estea definido como verdadeiro, pódense especificar máis propiedades específicas para o tipo de compoñente da solución. Se establece a propiedade IsCustomizable.Value
como falsa, despois de que a solución se instale como solución administrada, o compoñente da solución non será personalizable.
As propiedades xestionadas garanten que só unha solución do mesmo publicador poderá cambiar o compoñente. As propiedades xestionadas só afectarán aos compoñentes xestionados e non forzan a isto nos ambientes de desenvolvemento nos que o compoñente aínda está sen xestionar. O uso da propiedade xestionada de IsCustomized
ten como obxectivo garantir que ningunha outra capa de solución de ningún outro publicador e que non se poidan facer personalizacións activas no compoñente unha vez que estea instalado como solución administrada.
A táboa seguinte enumera algunhas propiedades xestionadas para un subconxunto de compoñentes da solución dispoñibles.
Compoñente | Nome para mostrar | Propiedade |
---|---|---|
Entidad | Pódese personalizar | IsCustomizable.Value |
Entidad | O nome para mostrar pódese modificar | IsRenameable.Value |
Entidad | Pode ser a entidade relacionada nunha relación | CanBeRelatedEntityInRelationship.Value (só lectura) |
Entidad | Pode ser a entidade principal da relación | CanBePrimaryEntityInRelationship.Value (só lectura) |
Entidad | Pode estar nunha relación de varios a varios | CanBeInManyToMany.Value (só lectura) |
Entidad | Pódense crear novos formularios | CanCreateForms.Value |
Entidad | Pódense crear novas gráficas | CanCreateCharts.Value |
Entidad | Pódense crear novas visualizacións | CanCreateViews.Value |
Entidad | Pode cambiar calquera outra propiedade de entidade que non sexa representada por unha propiedade xestionada | CanModifyAdditionalSettings.Value |
Entidad | Pode crear atributos | CanCreateAttributes.Value |
Campo (atributo) | Pódese personalizar | IsCustomizable.Value |
Campo (atributo) | O nome para mostrar pódese modificar | IsRenameable.Value |
Campo (atributo) | Pódese cambiar o nivel de requisitos | RequiredLevel.CanBeChanged Nota: RequiredLevel é a única propiedade xestionada que utiliza a propiedade CanBeChanged . |
Campo (atributo) | Pode cambiar calquera outra propiedade de atributo que non sexa representada por unha propiedade xestionada | CanModifyAdditionalSettings.Value |
Relación das entidades | Pódese personalizar | IsCustomizable.Value |
Formulario | Pódese personalizar | SystemForm.IsCustomizable.Value |
Gráfica | Pódese personalizar | SavedQueryVisualization.IsCustomizable.Value |
Visualizar | Pódese personalizar | SavedQuery.IsCustomizable.Value |
Conxunto de opcións | Pódese personalizar | IsCustomizable.Value |
Recurso Web | Pódese personalizar | WebResource.IsCustomizable.Value |
Workflow | Pódese personalizar | Workflow.IsCustomizable.Value |
Workflow | É paso de procesamento personalizado permitido para outros editores | Workflow.IsCustomProcessingStepAllowedForOtherPublishers.Value |
Ensamblaxe | Pódese personalizar | SdkMessageProcessingStep.IsCustomizable.Value |
Rexistro de conxunto | Pódese personalizar | ServiceEndpoint.IsCustomizable.Value |
Modelo de correo electrónico | Pódese personalizar | Template.IsCustomizable.Value |
Modelo de artigo de KB | Pódese personalizar | KbArticleTemplate.IsCustomizable.Value |
Modelo de contrato | Pódese personalizar | ContractTemplate.IsCustomizable.Value |
Modelo de combinación de correspondencia | Pódese personalizar | MailMergeTemplate.IsCustomizable.Value |
Panel | Pódese personalizar | SystemForm.IsCustomizable.Value |
Roles de seguranza | Pódese personalizar | Role.IsCustomizable.Value |
Formulario do sistema | Pódese eliminar | Pódese eliminar.Value |
Consulta do sistema | Pódese eliminar | Pódese eliminar.Value |
Esta propiedade xestionada controla se se executarán os pasos do complemento rexistrados por terceiros para as mensaxes creadas mediante accións de proceso personalizadas. O valor predeterminado é false
, o que significa que os pasos do complmento rexistrados que non usan o mesmo publicador de solucións non se executarán. Cando isto é true
, o editor da acción de proceso personalizada permite executar os pasos de rexistro de complementos rexistrados.
Despois de liberar a solución administrada, pode cambiar as propiedades xestionadas. Só pode cambiar as propiedades xestionadas para facelas menos restritivas. Por exemplo, despois do lanzamento inicial pode decidir permitir a personalización dunha entidade.
Actualice as propiedades xestionadas para a súa solución lanzando unha actualización para a súa solución coas propiedades xestionadas cambiadas. A súa solución administrada só a pode actualizar outra solución administrada asociada co mesmo rexistro de editor que a solución administrada orixinal. Se a actualización inclúe un cambio nas propiedades xestionadas para facelas máis restritivas, ignoraranse esas modificacións de propiedade xestionadas pero aplicaranse outros cambios na actualización.
Debido a que o editor orixinal é un requisito para actualizar as propiedades xestionadas para un solución administrada, non se pode asociar ningunha solución non administrada cun editor que se empregou para instalar unha solución administrada.
Nota
Isto significa que non poderá desenvolver unha actualización para a súa solución empregando unha organización na que estea instalado a súa solución administrada.
Use IsComponentCustomizableRequest para comprobar se un compoñente de solución é personalizable. Ademais, pode comprobar as propiedades dos compoñentes da solución, pero ten que considerar que a determinación definitiva do significado depende dos valores de varias propiedades. Cada compoñente de solución ten unha propiedade IsCustomizable
. Cando se instala un compoñente de solución como parte dunha solución administrada, a propiedade IsManaged
será certa. As propiedades xestionadas só se aplican para solucións xestionadas. Ao comprobar as propiedades xestionadas para determinar se un compoñente de solución individual é personalizable, ten que comprobar as prioridades IsCustomizable
e IsManaged
. Un compoñente de solución onde IsCustomizable
é falso e IsManaged
é falso, pode personalizarse.
A entidade e o atributo teñen máis propiedades xestionadas ademais de IsCustomizable
. Estas propiedades xestionadas non se actualizan se IsCustomizable
está configurado en falso. Isto significa que ademais de comprobar a propiedade xestionada individual, tamén debe consultar a propiedade IsCustomizable
para ver se se está a cumprir a propiedade xestionada.