Essa dica eu ja mandei para o MUGSP mas resolvi deixar registrado aqui também.
Não sei se alguém algum dia vai precisar disso, mas se estiver tentando gerar um dll com código C# compilado “na mão” para Silverlight, tem que fazer o seguinte:
- Todas as referencias devem ser feitas para as dlls compiladas para Silverlight (System.dll, mscorlib.dll e assim por diante). No meu caso faço referencias as dlls que estão na pasta c:\Arquivos de programas\ReferenceAssemblies\Microsoft\Framework\Silverlight\v4.0\
- Para o compilador (csc.exe) é necessário informar os argumentos /nostdlib+ /noconfig. Isso é necessário para que não seja gerado referencia para as bibliotecas padrões do .Net Framework.
- No caso de utilizar o CodeDom (que foi o meu caso), é necessário passar esses argumentos para CompilerParameters:
new CompilerParameters
{
OutputAssembly = Path.Combine(outputDir, baseNamespace + ".Silverlight.dll"),
CompilerOptions = @"/noconfig /nostdlib"
};
Fica ai a dica pra quem precisar.
Até a próxima.
Nenhum comentário:
Postar um comentário