Em primeiro lugar, por questões de segurança, o Silverlight não é capaz de acessar nenhum banco de dados diretamente. Dito isso, se você fizer um web service ou algo semelhante para fazer essa ponte, executando a query e
retornando o resultado para ser exibido na tela, sim, é possível. Mas eu sugiro que você pense bastante sobre o aspecto segurança da aplicação e proteja bem o seu sistema e web service pois um serviço assim abre
uma brecha grande, já que permite a execução de queries não previstas diretamente no banco, e alguém poderia explorar isso de forma maliciosa e comprometer o seu sistema.
Você pode proteger o seu serviço de várias formas:
- Obrigando o web service a rodar usando apenas https, para que não seja possível interceptar requests
- Fazendo com que seja obrigatório autenticar para usar o web service e criando um log de auditoria que registre tudo que foi executado e quem executou
- Criptografando a query antes de enviar para que só trafeguem dados protegidos
Todas as alternativas acima podem ser feitas individualmente ou em conjunto, tornando o seu sistema mais seguro.