Cansado de ficar fazendo merge de dlls para plugin e workflow? Pois então! Durante o projeto que estou trabalhando focado em DevOps, um dos problemas do cliente é que ele faz uso de códigos duplicados em excesso, isso é devido ao Dynamics 365 não suportar o uso do ILMerge.

Sim! Não é suportado e você não sabia disso!

Fazendo pesquisas de como minimizar esse problema, pois achava que não teria como resolver, me deparei com uma coisa chamada “Shared Project”.

Shared Project, existe desde 2015 com Xamarin, permitindo compartilhar código em outros projetos que são compiláveis. Projetos do tipo shared não são compilados, ou seja, não geram uma DLL na saída, ele precisa estar vinculado há algun projeto que faça build.

Shared Project

Ou seja, toda vez que um Shared Project está vinculado a outro projeto. O build quando acionado, adiciona os arquivos deste projeto para dentro da DLL gerada, sendo assim, não necessitando fazer a mescla de DLL para que seja possível subir um plugin ou workflow com código compartilhado.

Meu Deus Michael, isso é maravilhoso, eu só quero utilizar este tipo de projeto a partir de agora! Calma pequeno gafanhoto, nem tudo são flores.

Shared Projects não podem por exemplo receber referência de outros assemblies. Então tome cuidado ao utilizar.

Recomendo o uso para compartilhar modelo de entidades, regras de negócios, coisas que realmente vão ser utilizadas pelos outros projetos.

Para saber mais sobre Shared Projects visite https://docs.microsoft.com/pt-br/xamarin/cross-platform/app-fundamentals/shared-projects?tabs=windows

Espero que essa dica tenha sido útil para vocês. Pois para mim foi de muita utilidade. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

Protected by WP Anti Spam