Exemplos da Palestra de Visual Studio 2008 (WPF+WCF+Silverlight 3) e da Palestra SQL Server 2008
Conforme prometido, seguem os exemplos que utilizei nas palestras de Visual Studio e de SQL Server na Green em Julho e agosto.
Lembrando que em setembro iremos disponibilizar os ppts tambem.
Palestra SQL Server 2008 (1).zip (91,48 kb)
Palestra Visual Studio WPF+WCF+Silverlight (3).zip (674,91 kb)
Problemas de acesso no Silverlight 3 com WebServices (access denied cross-domain)
Ao executar um componente feito em Silverlight que acesse um dados externo como um WebService ou um componente WCF você poderá receber uma mensagem totalmente insignificante, como abaixo:
"Message: Unhandled Error in Silverlight Application An exception occurred during the operation, making the result invalid. Check InnerException for exception details. at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
at SilverlightApplication1.MeuWS.RetornaPessoaCompletedEventArgs.get_Result()
at SilverlightApplication1.MainPage.X_RetornaPessoaCompleted(Object sender, RetornaPessoaCompletedEventArgs e)
at SilverlightApplication1.MeuWS.WSExemplo1SoapClient.OnRetornaPessoaCompleted(Object state)
Line: 1
Char: 1
Code: 0"
Caso voce acesse o InnerException como sugerido na mensagem receberá um erro de access denied por não haver manifesto de confiança cross-domain ou cross-forest.
Este erro acontece porque o Silverlight ao acessar um componente externo precisa que seja confiado para uso naquela URL.
O arquivo ClientAccesspolicy.xml é muito simples e deve estar no mesmo site que o webservice (asmx) está:
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="http://*" />
<domain uri="https://*" />
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
Note que nas linha 5 inicia uma relação dos sites que podem acessar o webservice em que este arquivo está hosteado. No exemplo acima estamos permitindo qualquer site de utilizar o nosso webservice, mas obviamente você irá montar sua própria lista.
Boot pelo PenDrive no Windows 2003/XP e superiores
Muitas vezes precisamos criar boot por pendrive, como por exemplo, para instalar o SO em um netbook.
Entre com command prompt, se for no Windows Vista ou no Windows 7 entre como administrador (botão direito no atalho "Abrir como Administrador"):
DiskPart (ferramenta de manutenção e configuração de disco)
Listdisk (lista os discos fisicos da maquina)
Select disk <Numero> (seleciona o pendrive, CUIDADO PARA NÃO ESCOLHER O DISCO ERRADO)
Clean (apaga todos os dados do disco)
Create partition primary (cria a partição com todo o tamanho do pendrive)
Select partition 1 (seleciona a partição que acabou de ser criada)
Active (ativa a partição criada)
Format fs=ntfs (formata o pendrive)
Assign (atribui uma letra ao pendrive no Windows Explorer)
Exit (sai do utilitário)
Não feche ainda o command prompt, verifique com qual letra o pendrive ficou no Windows Explorer.
Volte ao command prompt e acesse o DVD de instalação do Windows Vista ou do Windows 7 e acesse a pasta boot:
cd\boot (diretório de boot do DVD de instalação)
bootsect /nt60 <Letra>: (copia os arquivos de boot para um windows versão 6.0 ou superior, no caso o Vista ou Windows 7)
Pronto, agora configure o BIOS de sua maquina para dar boot pelo Pendrive ou use a tecla <F8> que em muitos BIOS mostra a lista de boot.