tag:blogger.com,1999:blog-12080874876636045942024-02-08T09:09:07.308-03:00Desenvolvendo a CabeçaDestinado à troca de experiências relacionadas a Análise de Sistemas, Desenvolvimento .Net e Engenharia de SoftwareDanilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-1208087487663604594.post-25103454924630735242010-03-05T11:06:00.000-03:002010-03-05T11:06:41.319-03:00C# + Remoting + Generics – Framework 2.0<div class="MsoNormal">Durante um projeto encontramos com o seguinte problema:</div><div class="MsoNormal"><br />
</div><div class="MsoNormal">1 – As camadas da aplicação são divididas em projetos separados para facilitar o versionamento e o reuso em outros projetos e devido ao núcleo (Camadas até a classe de serviços) ser utilizado por várias interfaces (desktop, mobile, web).</div><div class="MsoNormal">2 – Como as camadas geravam class libraries (DLL) , o cliente exigia que as mesmas ficassem em um servidor de Componetes.</div><div class="MsoNormal">3 – O uso deste servidor era primordial, uma vez que o servidor da aplicação não tinha acesso ao servidor de Banco de dados</div><div class="MsoNormal">4 – A aplicação já estava desenvolvida, portanto readaptar o sistema para utilizar tudo baseado em Web Services, não era uma opção</div><div class="MsoNormal">Solução: A melhor solução encontrada foi o uso do Remoting, porém encontramos várias barreiras, pois a nossa camada de persistência utilizava muitos generics.</div><div class="MsoNormal">Conseguimos implementar a solução de Remoting ligando a camada de serviços à camada de interface e posto a seguir um exemplo da solução:</div><div class="MsoNormal"><br />
</div><div class="MsoNormal">Para isto vamos considerar as seguintes classes no lado do Servidor de Componentes:</div><div class="MsoNormal"><br />
</div><div class="MsoNormal">Classe de Domínio: Usuário – dentro de uma class library</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">namespace</span></span></span><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Dominio<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">class</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Usuario<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">private</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Double</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dblCodigo;</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Double</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> codigo<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">get</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">return</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dblCodigo; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">set</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { dblCodigo = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">value</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">private</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strNome;</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> nome<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">get</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">return</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strNome; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">set</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { strNome = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">value</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">private</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strLogin;</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> login<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">get</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">return</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strLogin; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">set</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { strLogin = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">value</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">private</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strSenha;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">String</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> senha</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">get</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">return</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> strSenha; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">set</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> { strSenha = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">value</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">; }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}</span></span></span><span lang="EN-US" style="mso-ansi-language: EN-US;"><o:p></o:p></span></div><div class="MsoNormal"><span lang="EN-US" style="font-family: "Courier New"; font-size: 10.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-no-proof: yes;"><span class="Apple-style-span" style="background-color: #cccccc;"><br />
</span></span></div><div class="MsoNormal"><span lang="EN-US" style="mso-ansi-language: EN-US;">Classe de Serviço – Class Library<o:p></o:p></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">namespace</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Servico<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">class</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">UsuarioListagem</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> : </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">MarshalByRefObject</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">, InterfaceRemoting.</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">IUsuarioListagem<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="text-indent: 35.4pt;"><span lang="EN-US" style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 35.4pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="color: grey; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> ///</span></span></span><span style="color: green; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: grey; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"><summary><o:p></o:p></summary></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: grey;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">///</span></span></span><span style="color: green;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Retorna um datatable com uma lista de Usuários<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: grey;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">///</span></span></span><span style="color: green;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: grey;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"></span></span></span><span style="color: green;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">DataTable</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Listar()<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Manager</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> manager = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">new</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Manager</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">IList</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"><</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Usuario</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">> lstUsuario = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">null</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: grey; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: grey; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">//Chamada à persistenca para a listagem de usuários, esta retorna uma lista de usuários (Ilist<usuario><o:p></o:p></usuario></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">lstUsuario = manager.Persistencia.usuario.listar();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">DataTable</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario = </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">new</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">DataTable</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"USUARIO"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario.Columns.Add(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"codigo"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario.Columns.Add(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"nome"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario.Columns.Add(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"login"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario.Columns.Add(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"senha"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">foreach</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> (</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Usuario</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> objUsuario </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">in</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> lstUsuario)<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">DataRow</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> linhaUsuario = dtUsuario.NewRow();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> linhaUsuario[</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"codigo"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">] = objUsuario.codigo.ToString(); <o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> linhaUsuario[</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"nome"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">] = objUsuario.nome.ToString();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> linhaUsuario[</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"login"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">] = objUsuario.login.ToString();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> linhaUsuario[</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"senha"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">] = objUsuario.senha.ToString();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario.Rows.Add(linhaUsuario);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">return</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> dtUsuario;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="text-indent: 35.4pt;"><span style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="text-indent: 35.4pt;"><span style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}<o:p></o:p></span></span></span></div><div class="MsoNormal"><span style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}</span></span><o:p></o:p></span></div><div class="MsoNormal"><span style="font-family: "Courier New"; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"><span class="Apple-style-span" style="background-color: #cccccc;"><br />
</span></span></div><div class="MsoNormal"><span lang="EN-US" style="mso-ansi-language: EN-US;">Servidor Remoting – Console Application (podendo ser um Windows service)<o:p></o:p></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span class="Apple-style-span" style="color: blue; font-family: 'Courier New'; font-size: small;"><span class="Apple-style-span" style="font-size: 13px;"><br />
</span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Remoting;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Remoting.Channels;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Remoting.Channels.Tcp;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Serialization.Formatters.Binary;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Servico;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Globalization;</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Threading;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">namespace</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Server<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">class</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Class1<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: green;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">//[STAThread]<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">static</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">void</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Main(</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">string</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">[] args)<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">try<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">RemotingConfiguration</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.Configure(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"Server.config"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">RemotingConfiguration</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.CustomErrorsMode = </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">CustomErrorsModes</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.Off;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Console</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.WriteLine(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"Servidor de Remoting Inciado"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: green;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">//Esta instrução deve ser repetida para cada classe de Serviço<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: #2b91af; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">RemotingConfiguration</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.RegisterWellKnownServiceType(</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">typeof</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">(</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">UsuarioListagem</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">), </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">typeof</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">(</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">UsuarioListagem</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">).ToString(), </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">WellKnownObjectMode</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.SingleCall);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">foreach</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> (</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">WellKnownServiceTypeEntry</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> teste </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">in</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">RemotingConfiguration</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.GetRegisteredWellKnownServiceTypes())<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Console</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.WriteLine(</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"Servidor inciado: nome - tipo: "</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> + teste.ObjectUri.ToString() + </span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">" - "</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> + teste.TypeName.ToString());<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Console</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.ReadLine();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">catch</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> (</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Exception</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> ex)<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Console</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.WriteLine(ex.Message);<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }</span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}</span></span><o:p></o:p></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: "Courier New"; font-size: 10.0pt; mso-no-proof: yes;"><span class="Apple-style-span" style="background-color: #cccccc;"><br />
</span></span></div><div class="MsoNormal"><o:p> Arquivo de Configuração do Servidor de Remoting <span style="font-family: "Courier New"; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;">(<span style="color: #a31515;">"Server.config"</span></span>)</o:p></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">xml</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: red; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">version</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">1.0</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: red;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">encoding</span></span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">utf-8</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> ?><o:p></o:p></span></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"><</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">configuration</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">system.runtime.remoting</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">application</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">channels</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">channel</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: red; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">ref</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">tcp</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: red;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">port</span></span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">80</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">clientProviders</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">formatter</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: red; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">ref</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">binary</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">/><o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">clientProviders</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">channel</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">></span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> /><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">channels</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">application</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">system.runtime.remoting</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">system.web</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> <</span></span></span><span lang="EN-US" style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">globalization</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span lang="EN-US" style="color: red; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">culture</span></span></span><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">pt-BR</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: red;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">uiCulture</span></span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">=</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">pt-BR</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">/><o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"></span></span></span><span style="color: #a31515; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">system.web</span></span></span><span style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">><o:p></o:p></span></span></span></div><div class="MsoNormal"><span style="color: blue; font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"></span></span></span><span style="color: #a31515; font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">configuration</span></span></span><span style="color: blue; font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">></span></span><o:p></o:p></span></div><div class="MsoNormal"><span style="color: blue; font-family: "Courier New"; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"><span class="Apple-style-span" style="background-color: #cccccc;"><br />
</span></span></div><div class="MsoNormal">Agora para o lado da interface, deve ser criada uma interface para o serviço:</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Collections.Generic;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Text;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Data;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><br />
</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">namespace</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> InterfaceRemoting<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">{<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">public</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">interface</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">IUsuarioListagem<o:p></o:p></span></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> {<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> </span></span></span><span style="color: #2b91af; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">DataTable</span></span></span><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> Listar();<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> }<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">}</span></span><span class="Apple-style-span" style="font-size: small;"><o:p></o:p></span></span></div><div class="MsoNormal"><br />
</div><div class="MsoNormal">Dentro da interface, para “carregar” a interface com o objeto do domínio utilizamos da seguinte forma:</div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> InterfaceRemoting;<o:p></o:p></span></span></span></div><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;"><span lang="EN-US" style="color: blue; font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New';"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Remoting;<o:p></o:p></span></span></span></div><div class="MsoNormal"><span lang="EN-US" style="color: blue; font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">using</span></span></span><span lang="EN-US" style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"> System.Runtime.Remoting.Channels.Tcp;<o:p></o:p></span></span></span></div><div class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">…</span></span></span><span lang="EN-US"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;"><o:p></o:p></span></span></span></div><div class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New'; line-height: 115%;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">IUsuarioListagem objIUsuarioListagem = (IUsuarioListagem)</span></span><span style="color: #2b91af;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">Activator</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">.GetObject(</span></span><span style="color: blue;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">typeof</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">(IUsuarioListagem), ConfigurationManager.AppSettings[</span></span><span style="color: #a31515;"><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">"ServicoUsuarioListagem"</span></span></span><span class="Apple-style-span" style="background-color: #cccccc;"><span class="Apple-style-span" style="font-size: small;">].ToString());</span></span><span class="Apple-style-span" style="font-size: small;"><o:p></o:p></span></span></div><div class="MsoNormal"><br />
</div><div class="MsoNormal">Assim conseguimos consumir o <span style="font-family: "Courier New"; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;">objIUsuarioListagem.Listar()<o:p></o:p></span></div><div class="MsoNormal"><br />
</div><div class="MsoNormal"><span style="line-height: 115%;"><span class="Apple-style-span" style="font-family: inherit;">OBS: Somente conseguimos utilizar o remoting para métodos do serviço, não conseguimos implemtar para propriedades, pois estas não são automaticamente modificadas na interface quando modificadas dentro do serviço</span></span></div>Danilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.com3tag:blogger.com,1999:blog-1208087487663604594.post-49899732474187865682010-03-02T20:57:00.001-03:002010-03-02T20:57:13.812-03:00Programando com prazer com DDDMuito boa a apresentação montada por Giovanni Bassi explicando os fundamentos do DDD, muito boa para quem está começando a se interessar pelo assunto e está interessado em uma visão geral.<div style="width:425px" id="__ss_1665440"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/giovanni.bassi/programando-com-prazer-com-ddd" title="Programando com prazer com DDD">Programando com prazer com DDD</a></strong><object width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ddd2-090701000623-phpapp02&stripped_title=programando-com-prazer-com-ddd" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ddd2-090701000623-phpapp02&stripped_title=programando-com-prazer-com-ddd" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object><div style="padding:5px 0 12px">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/giovanni.bassi">Giovanni Bassi</a>.</div></div>Danilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.com0tag:blogger.com,1999:blog-1208087487663604594.post-27667737379555323142010-03-02T20:46:00.000-03:002010-03-02T20:46:46.176-03:00CSM em Belo Horizonte - 18 e 19 de março<div class="separator" style="clear: both; text-align: center;"><a href="http://pierg.files.wordpress.com/2009/12/scrummaster_certification.jpg" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="70" kt="true" src="http://pierg.files.wordpress.com/2009/12/scrummaster_certification.jpg" width="200" /></a></div><br />
<strong>Público alvo</strong><br />
<br />
Líderes, coordenadores ou gerentes de projetos, e membros de time que utilizem Scrum como método de gerenciamento.<br />
<br />
<strong>Pré-requisito</strong><br />
Ter conhecimentos introdutórios sobre métodos ágeis, ou ter participado do treinamento "Introdução aos Métodos Ágeis".<br />
<br />
<strong>Descrição</strong><br />
Neste curso de dois dias, você não somente conhecerá os fundamentos do Scrum, mas terá experiências hands-on usando Scrum. Treinamento oficial da ScrumAlliance.org no Brasil que tornará você um ScrumMaster oficial certificado.<br />
<br />
<a href="http://www.adaptworks.com.br/treinamentos/csm.html">Veja maiores detalhes</a>Danilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.com0tag:blogger.com,1999:blog-1208087487663604594.post-2116122348246145542010-03-02T20:41:00.001-03:002010-03-02T20:42:08.734-03:00Indicação de Literatura - Domain-Driven Design<div class="separator" style="clear: both; text-align: center;"><a href="http://www.livrariacultura.com.br/imagem/capas1/070/2845070.jpg" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" kt="true" src="http://www.livrariacultura.com.br/imagem/capas1/070/2845070.jpg" /></a></div>Estou lendo este famoso livro do Evans sobre DDD, o que está me surpreendendo é que não se trata de um livro tecnicista, voltado apenas para padrões e exemplos, é também uma ótima referencia, para lideres técnicos e analistas de sistemas, em relação às boas práticas durante uma especificação ou discussão de um software, ainda estou no Cap. II, mas já indico para profissionais de requisitos e modelagem como referência. Assim que terminar posto aqui as impressões finais.<br />
<br />
<a href="http://www.livrariacultura.com.br/scripts/cultura/resenha/resenha.asp?nitem=2845070&sid=7592161871232740356908253&k5=64E5B9D&uid=">Link para Compra do Livro</a>Danilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.com0tag:blogger.com,1999:blog-1208087487663604594.post-15077560059156268422010-03-02T20:27:00.002-03:002010-03-02T20:49:09.348-03:00Um mapa de componentes .NET versus Java para soluções Web<span style="font-family: inherit;">Waldemir Cambiucci montou dois mapas relacionando a arquitetura de uma aplicação WEB Java e .NET, muito útil na hora de migrar entre projetos com as diferentes tecnologias.</span><br />
<br />
<table style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"><tbody>
<tr><td style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"><a href="http://blogs.msdn.com/blogfiles/wcamb/WindowsLiveWriter/AplicaesWebJavaversus.NET_FE6B/image_thumb.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="252" kt="true" src="http://blogs.msdn.com/blogfiles/wcamb/WindowsLiveWriter/AplicaesWebJavaversus.NET_FE6B/image_thumb.png" width="320" /></a></td></tr>
<tr><td style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"><a href="http://blogs.msdn.com/blogfiles/wcamb/WindowsLiveWriter/AplicaesWebJavaversus.NET_FE6B/image_thumb_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" kt="true" src="http://blogs.msdn.com/blogfiles/wcamb/WindowsLiveWriter/AplicaesWebJavaversus.NET_FE6B/image_thumb_1.png" width="320" /></a></td></tr>
</tbody></table>Fonte: <a href="http://blogs.msdn.com/wcamb/archive/2010/03/01/um-mapa-de-componentes-net-versus-java-para-solu-es-web.aspx?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+wcamb+(Arquitetura+de+Solu%C3%A7%C3%B5es)">Waldermir Cambiucci Blog</a>Danilo Viannahttp://www.blogger.com/profile/04861270471037631548noreply@blogger.com0