<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Fernando Vezzali - Microsoft Certified Professional Developer</title><subtitle type="html" /><id>http://weblogs.asp.net/fernandovezzali/atom.aspx</id><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/default.aspx" /><link rel="self" type="application/atom+xml" href="http://weblogs.asp.net/fernandovezzali/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20510.895">Community Server</generator><updated>2008-08-26T11:47:00Z</updated><entry><title>Habilitando o serviço de indexação (serviço de busca por palavra-chave) no SharePoint 2007</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2009/09/21/habilitando-o-servi-231-o-de-indexa-231-227-o-servi-231-o-de-busca-por-palavra-chave-no-sharepoint-2007.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2009/09/21/habilitando-o-servi-231-o-de-indexa-231-227-o-servi-231-o-de-busca-por-palavra-chave-no-sharepoint-2007.aspx</id><published>2009-09-21T17:04:00Z</published><updated>2009-09-21T17:04:00Z</updated><content type="html">&lt;P&gt;A versão standard do Sharepoint 2007 apresenta por padrão o serviço de indexação ativado, já a versão enterprise, não. Após a instalação da versão enterprise do Sharepoint 2007, a busca por palavra-chave em todo o conteúdo do portal não funciona. &lt;/P&gt;
&lt;P&gt;Para ativa-la, é muito simples. Vamos os passos:&lt;/P&gt;
&lt;P&gt;Central Administration -&amp;gt; Application Management -&amp;gt; Content databases &lt;/P&gt;
&lt;P&gt;Se não houver nenhuma "content database", crie uma. Se houver, basta clicar sobre o nome da mesma e com isso entrar na sua tela de configuração. Dentro da tela "Manage Content Database Settings", no&amp;nbsp; combo-box do campo "Search Server", selecione o servidor.&lt;/P&gt;
&lt;P&gt;Pronto. Vale lembrar que o período em que a indexação acontece pode ser configurado de acordo com as necessidade do portal.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7213417" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="palavra-chave" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/palavra-chave/default.aspx" /><category term="busca" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/busca/default.aspx" /><category term="indexa&amp;#231;&amp;#227;o" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/indexa_26002300_231_3B0026002300_227_3B00_o/default.aspx" /><category term="sharepoint 2007" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/sharepoint+2007/default.aspx" /></entry><entry><title>Fundamentos</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2009/06/04/teste-o-seu-racioc-237-nio-l-243-gico.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2009/06/04/teste-o-seu-racioc-237-nio-l-243-gico.aspx</id><published>2009-06-04T11:18:00Z</published><updated>2009-06-04T11:18:00Z</updated><content type="html">&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;O desenvolvimento de software depende, entre outros fatores, de lógica. Todo programador experiente, conhece e aplica a lógica inevitavelmente o tempo todo e existem meios de se atingir um nível mais aprofundado de conhecimento nessa matéria.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;O ato de simplesmente codificar, ainda mais quando amparado por ferramentas de apoio à edição (&lt;I&gt;&lt;A href="http://pt.wikipedia.org/wiki/Ambiente_de_Desenvolvimento_Integrado" mce_href="http://pt.wikipedia.org/wiki/Ambiente_de_Desenvolvimento_Integrado"&gt;IDEs&lt;/A&gt;),&lt;/I&gt; oferece em si pouquíssima dificuldade. Com um nível mínimo de lógica e bastante vontade, um aventureiro com acesso ao google conseguiria programar e até modelar um banco de dados. A conseqüência inevitável seria um produto final ruim, um software repleto de defeitos, que castigariam bastante o usuário. A lista de problemas seria extensa, renderia um bom artigo sobre “más práticas” no desenvolvimento de software, no entanto não é o objetivo deste texto discorrer sobre o tema.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Hoje em dia, com a enorme variedade de linguagens de programação, frameworks, tendências, ferramentas e notícias, indo e vindo à frente de todos a toda velocidade, é compreensível constatar o fato de um profissional de TI esquecer-se dos fundamentos e direcionar todos os seus esforços para trabalhar com uma tecnologia que pouco domina, às vezes por força das circunstâncias, às vezes por uma imposição. O fato é que, os fundamentos sempre serão fundamentos e é importante buscar fortalecê-los, sempre.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;A busca pelo conhecimento precisa estar direcionada a um objetivo e situada nos padrões da atualidade. Um indivíduo que objetiva atuar como desenvolvedor de software, não deve iniciar sua preparação estudando tecnologias ultrapassadas ou que simplesmente morreram. Também não deve iniciar os estudos abordando um tema composto por princípios dos quais se desconhece por completo. Por exemplo, não é possível iniciar estudos sobre design patterns sem possuir uma base sólida em orientação a objetos, assim como não é recomendável aprofundar-se em data warehouse sem antes conhecer modelagem de dados.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Com o a popularização da Internet criou-se uma ilusão de que a busca por informação tornou-se tarefa simples, ledo engano. A Internet jorra informação, as ferramentas de busca retornam milhares de resultados e separar o joio do trigo é uma tarefa árdua. O tempo das pessoas é muito precioso para ser gasto separando informação boas das ruins, quando se define o objeto de estudo o mais aconselhável é partir diretamente para a fonte genuína dessa informação.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;O meio mais seguro para se obter informações verdadeiras e atualizadas sobre o objeto de estudo é ler as documentações fornecidas pelo próprio fabricante da tecnologia em questão. Se assunto for .Net Framework, não há hesitação, as bibliotecas do &lt;A href="http://weblogs.asp.net/controlpanel/blogs/www.msdn.com.br" mce_href="http://weblogs.asp.net/controlpanel/blogs/www.msdn.com.br"&gt;MSDN Brasil&lt;/A&gt; ou &lt;A title="MSDN Americano" href="http://msdn.microsoft.com/en-us/default.aspx" mce_href="http://msdn.microsoft.com/en-us/default.aspx"&gt;MSDN Americano&lt;/A&gt;&amp;nbsp;fornecem uma documentação abrangente. Já quando o assunto for UML, a fonte mais atualizada é consultar o site da organização internacional que mantém&amp;nbsp;padrões abertos: &lt;A href="http://www.uml.org/"&gt;http://www.uml.org&lt;/A&gt;, (saiba mais em &lt;A href="http://www.omg.org/"&gt;http://www.omg.org/&lt;/A&gt;). Para design patterns pode-se começar pelo site &lt;A href="http://www.dofactory.com/Patterns/Patterns.aspx" mce_href="http://www.dofactory.com/Patterns/Patterns.aspx"&gt;http://www.dofactory.com/Patterns/Patterns.aspx&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Entretanto, localizar a fonte genuína de informação não é tudo, outra dificuldade no aprendizado é a barreira lingüística, dentre as fontes citadas acima, somente o MSDN fornece uma versão em português brasileiro, as restantes são em inglês. Frente a esse problema existem duas saídas: aguardar uma futura versão em português dos documentos (totalmente inviável) ou estudar o idioma inglês voltado para leitura técnica.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Para atingir a maturidade, em qualquer carreira, faz-se necessário atuar em duas frentes simultaneamente, fortalecer fundamentos e manter a mente a aberta. Ou seja, deixar o radar ligado para as novidades que possam agregar valor ao trabalho, sem nunca perder foco na realidade.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;Treinar não é fácil, treinar exige um certo esforço. Acomodar-se em uma zona de conforto é um risco iminente e trabalhar muito não é o suficiente para afastar o perigo da estagnação do aprendizado. Ilude-se aquele que pensa que trabalhando muito estará aprendendo mais e mais. Indubitavelmente, no início de qualquer atividade profissional, involuntariamente aprende-se muito, porém com o passar do tempo essa curva de aprendizado logo se transforma numa reta, paralela ao eixo do tempo e limitada pela zona de conforto.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 35.4pt; MARGIN: 0cm 0cm 0pt; mso-pagination: none; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Arial; FONT-SIZE: 10pt"&gt;A necessidade da leitura técnica em inglês surge quando o profissional já domina os fundamentos e está buscando materiais relativamente novos, portanto em um primeiro momento é válida a opção de ler livros em português sobre os fundamentos, participar dos fóruns sérios como os do &lt;A href="http://social.msdn.microsoft.com/Forums/pt-br/categories/" mce_href="http://social.msdn.microsoft.com/Forums/pt-br/categories/"&gt;MSDN Brasil&lt;/A&gt; e estudar leitura técnica de inglês. Cultivar hábitos como: optar pela língua inglesa ao instalar softwares e participar das versões americanas dos fóruns &lt;A href="http://social.msdn.microsoft.com/Forums/en-US/categories" mce_href="http://social.msdn.microsoft.com/Forums/en-US/categories"&gt;MSDN&lt;/A&gt; ou &lt;A href="http://forums.asp.net/" mce_href="http://forums.asp.net/"&gt;ASP.NET&lt;/A&gt; irá estimular aprendizado na língua.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt; 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7107992" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Orienta&amp;#231;&amp;#227;o a objetos" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Orienta_26002300_231_3B0026002300_227_3B00_o+a+objetos/default.aspx" /><category term="fundamentos" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/fundamentos/default.aspx" /><category term="IDE" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/IDE/default.aspx" /><category term="MSDN" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/MSDN/default.aspx" /></entry><entry><title>A Síndrome da piada</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2009/04/12/a-sindrome-da-piada.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2009/04/12/a-sindrome-da-piada.aspx</id><published>2009-04-13T01:51:00Z</published><updated>2009-04-13T01:51:00Z</updated><content type="html">&lt;meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt;
	&lt;title&gt;&lt;/title&gt;
	&lt;meta name="GENERATOR" content="OpenOffice.org 2.4  (Linux)"&gt;
	&lt;style type="text/css"&gt;
	&lt;!--
		@page { size: 21cm 29.7cm; margin: 2cm }
		P { margin-bottom: 0.21cm }
	--&gt;
	&lt;/style&gt;


&lt;p&gt;Particularmente não gosto de fazer
cursos, prefiro outras formas de transferência de conhecimento, como
a leitura de livros, por exemplo. Entretanto, por força das
circunstâncias, participei de um curso multidisciplinar no mês
passado. Dentre os professores, três deles se destacaram pela
ótima didática e capacidade de manter o foco. Aliados ao bom humor,
 transformaram a aula em um momento muito agradável. Já, outros
dois professores, conseguiram dar uma bela aula de como perder a
concentração.&lt;/p&gt;
&lt;p&gt;Ironicamente, os dois  mestres iniciavam a aula extremamente
centrados na matéria. Os alunos, em silêncio, faziam suas anotações
e concordavam, gesticulando com a cabeça. Com o passar do tempo, a
aula, outrora pautada somente por temas relevantes, foi, aos poucos
diluída. O emprego de opiniões pessoais pelo, professor tornou-se
uma constante, o mestre conseguia relacionar tópicos da matéria com
sua vida pessoal, seguidamente. O foco agora é o professor e
inicia-se um show humorístico, as risadas da platéia instigavam o
mestre a continuar seu espetáculo e o círculo vicioso estende-se
pelos últimos 30 minutos da "aula".&lt;/p&gt;
&lt;p&gt;Outro erro comum a esses dois profissionais foi o de permitir a
recorrente intromissão de alunos, que tomados pelo clima
descontraído, sentiam-se a vontade em emitir opiniões e  realizar
perguntas durante a aula. Essas interrupções roubam um bom tempo e
devem ser evitadas. É claro que para barra-las é necessário um
certo jogo de cintura, o ideal é permitir que as perguntas sejam
feitas somente ao final da aula, caso contrário, a aula
transforma-se em um debate . Voltando ao tema da piada, a minha
sensação foi de que os professores piadistas obtinham uma espécie
de prazer ao arrancar gargalhadas de sua platéia. Sinceramente, se o
objetivo era esse, existem outros palcos mais adequados para essa
atividade: teatros, programadas de auditório e até mesmo o Youtube.&lt;/p&gt;&lt;p&gt;	A técnica de descontrair a aula com piadas curtas,
mescladas ao conteúdo da matéria, é positivo, mas deve ser dosada
pelo bom senso.&lt;/p&gt;
&lt;p mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7044843" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Aulas" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Aulas/default.aspx" /><category term="Aprendizado" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Aprendizado/default.aspx" /><category term="Aula" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Aula/default.aspx" /><category term="Treinamento" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Treinamento/default.aspx" /><category term="Treinamentos" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Treinamentos/default.aspx" /></entry><entry><title>XAML - Direto ao ponto !</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2009/01/08/xaml-direto-ao-ponto.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2009/01/08/xaml-direto-ao-ponto.aspx</id><published>2009-01-08T21:03:00Z</published><updated>2009-01-08T21:03:00Z</updated><content type="html">&lt;P&gt;1) O que significa a sigla ?&lt;BR&gt;e&lt;STRONG&gt;X&lt;/STRONG&gt;tensible &lt;STRONG&gt;A&lt;/STRONG&gt;pplication &lt;STRONG&gt;M&lt;/STRONG&gt;arkup &lt;STRONG&gt;L&lt;/STRONG&gt;anguage&lt;/P&gt;
&lt;P&gt;2) O que é ?&lt;BR&gt;Um arquivo XML com a extenção .xaml que tem associado um arquivo de code behind.&lt;/P&gt;
&lt;P&gt;3) O que não é ?&lt;BR&gt;Um substituto do HTML.&lt;/P&gt;
&lt;P&gt;4) Como se pronuncia ?&lt;BR&gt;Pronuncia-se "zamel"&lt;/P&gt;
&lt;P&gt;5) Para que serve ?&lt;BR&gt;Definir a UI (camada de apresentação), tanto na WEB, através do Silverlight, quanto no desktop, através do WPF.&lt;/P&gt;
&lt;P&gt;6) Por onde começo ?&lt;BR&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms752059.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms752059.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;7) Um exemplo ?&lt;BR&gt;Ver um xaml na prática é a melhor maneira de compreende-lo, como desenvolvo para Web sugiro um exemplo bem básico de Silverlight 2.0:&lt;BR&gt;&lt;A href="http://weblogs.asp.net/scottgu/pages/silverlight-2-end-to-end-tutorial-building-a-digg-search-client.aspx"&gt;http://weblogs.asp.net/scottgu/pages/silverlight-2-end-to-end-tutorial-building-a-digg-search-client.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6828332" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="WPF" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/WPF/default.aspx" /><category term="XAML" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/XAML/default.aspx" /><category term="Silverlight" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Silverlight/default.aspx" /></entry><entry><title>Certificações Microsoft e Dumps</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/11/11/certifica-231-245-es-microsoft-e-dumps.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/11/11/certifica-231-245-es-microsoft-e-dumps.aspx</id><published>2008-11-11T14:30:00Z</published><updated>2008-11-11T14:30:00Z</updated><content type="html">&lt;p mce_keep="true"&gt;As certificações profissionais não são exclusividade da área de TI, existem instituições que atestam a proficiência de profissionais por meio de exames em diversas áreas do conhecimento. Ser aprovado em um exame é uma grande conquista para o profissional, a obtenção de um certificado não se resume à acrescentar um novo item ao currículo, o certificado trás o reconhecimento de que o profissional tem total domínio sobre determinada área de estudo.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Muitos esquecem da responsabilidade e da expectativa que o certificado provoca e confundem o certificado com uma "medalha", o esportista que consegue uma medalha aos 20 anos, irá exibi-la com orgulho aos 90, e com toda a razão, a medalha é para sempre, ela representa que o atleta foi em algum momento o melhor, ou um dos melhores, em sua modalidade.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Medalhas e certificados de nada tem a ver, a medalha é só alegria e ponto. O certificado é diferente, ele deve ser encarado como uma responsabilidade em ter domínio sobre o assunto de qual trata, exemplificando: um programador Microsoft com o certificado "&lt;a href="http://www.microsoft.com/learning/en/us/Exams/70-536.aspx" class="" title="Microsoft .NET Framework - Application Development Foundation" target="_blank" mce_href="http://www.microsoft.com/learning/en/us/Exams/70-536.aspx"&gt;TS Microsoft .NET Framework - Application Development Foundation&lt;/a&gt;" tem supostamente o domínio sobre o framework, ou seja, ele conhece todos os recursos disponíveis, quais são as limitações e qual é a melhor abordagem a ser usada para resolver cada problema. O suposto conhecimento que citei acima é o que o mercado espera de um profissional certificado, é nesse momento que pode acontecer uma decepção, visto que uma parcela de profissionais coleciona certificados, acumula títulos e se enche de orgulho ao exibir seu currículo recheado por suas aprovações. Nada muito diferente de um garoto de 8 anos que prestes a completar seu álbum de figurinhas do campeonato brasileiro, ainda não conhece o funcionamento da lei do impedimento.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Assim como o garoto que compra um pacote fechado de figurinhas, despreza as repetidas e cola em seu album as inéditas, já vi profissional que engolir dumps de provas, obter diversos certificados e ganhar a ilusão de que será recompensado um dia. O tiro pode sair pela culatra, pois esse profissional continuará sem ter o verdadeiro conhecimento, irá gerar uma grande expectativa em torno de seu trabalho e no final das contas irá frustrar a empresa para qual trabalha e também a si mesmo.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Apesar de ser um material não-oficial e passível de erros, não condeno a leitura de dumps, se a finalidade for estudar e não simplesmente decorar, o dump serviria como uma espécie de questionário de qualidade duvidosa. Vale ressaltar que os "Training Kits" da Microsoft além de cobrirem 100% do conteúdo&amp;nbsp;do exame, possuem um enfoque bastante didático, incluem exercícios e questionários no final de todos os capítulos.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Se o problema for o preço, fica a dica de comprar pelo site da &lt;a href="http://www.amazon.com/" class="" title="Amazon" target="_blank" mce_href="http://www.amazon.com/"&gt;Amazon&lt;/a&gt;, lá é possível encontrar livros usados, em perfeito estado, pela metade do preço.&lt;/p&gt;
&lt;p mce_keep="true"&gt;Bons estudos!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6729387" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Certifica&amp;#231;&amp;#227;o Microsoft" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Certifica_26002300_231_3B0026002300_227_3B00_o+Microsoft/default.aspx" /></entry><entry><title>Geração de código no Visual Studio 2008 usando T4 Templates</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/09/14/gera-231-227-o-de-c-243-digo-no-visual-studio-2008-usando-t4-templates.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="25258" href="http://weblogs.asp.net/fernandovezzali/attachment/6624995.ashx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/09/14/gera-231-227-o-de-c-243-digo-no-visual-studio-2008-usando-t4-templates.aspx</id><published>2008-09-14T20:06:00Z</published><updated>2008-09-14T20:06:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;No Visual Studio 2008 pode-se usar um recurso para geração de código bastante interessante, T4 Templates, mais infos em &lt;A href="http://www.pnpguidance.net/" mce_href="http://www.pnpguidance.net/"&gt;http://www.pnpguidance.net/&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Irei explicar passo-a-passo como criar um exemplo inicial:&lt;/P&gt;
&lt;P mce_keep="true"&gt;No visual studio 2008:&lt;BR&gt;1- Crie uma console application com o nome "T4TemplateExemple"&lt;BR&gt;2- Clique com o botão direito do mouse no nome do projeto: Add/New Item&lt;BR&gt;3- Selecione um text file, mas renomeie a extenção de txt para tt. Use o nome "T4Template.tt"&lt;BR&gt;4- Digite o seguinte código dentro do arquivo tt:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;lt;#@ template language = "C#" #&amp;gt;&lt;BR&gt;using System;&lt;/P&gt;
&lt;P mce_keep="true"&gt;namespace T4TemplateExemple&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; class T4Example&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void ExibeNumeros()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;#&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(int i=0; i&amp;lt;6; i++)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;lt;#= i#&amp;gt;);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;#&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;}&lt;/P&gt;
&lt;P mce_keep="true"&gt;5- Salve o arquivo tt&lt;BR&gt;6- Abra o arquivo ".cs"&amp;nbsp;associado ao ".tt" e veja o resultado:&lt;/P&gt;
&lt;P mce_keep="true"&gt;using System;&lt;/P&gt;
&lt;P mce_keep="true"&gt;namespace T4TemplateExemple&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; class T4Example&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void ExibeNumeros()&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(0);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(1);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(2);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(3);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(4);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(5);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;}&lt;/P&gt;
&lt;P mce_keep="true"&gt;Conclusão, todo o texto escrito no arquivo .tt é diretamente escrito no .cs. Todo texto escrito entre as tags &amp;lt;# #&amp;gt; do arquivo .tt é interpretado. Todo o texto escrito entre as tags &amp;lt;#= #&amp;gt; do arquivo .tt é interpretado como uma variável.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Já deu para entender o potencial desse recurso, né?&lt;/P&gt;
&lt;P mce_keep="true"&gt;Download da solution: &lt;A class="" href="http://weblogs.asp.net/blogs/fernandovezzali/T4TemplateExemple.zip" mce_href="http://weblogs.asp.net/blogs/fernandovezzali/T4TemplateExemple.zip"&gt;T4TemplateExemple.zip&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6624995" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="T4 Templates" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/T4+Templates/default.aspx" /><category term="Gera&amp;#231;&amp;#227;o de c&amp;#243;digo" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Gera_26002300_231_3B0026002300_227_3B00_o+de+c_26002300_243_3B00_digo/default.aspx" /></entry><entry><title>Trabalhando fora do Brasil</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/09/04/trabalhando-fora-do-brasil.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/09/04/trabalhando-fora-do-brasil.aspx</id><published>2008-09-05T01:27:00Z</published><updated>2008-09-05T01:27:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;Os profissionais da área de TI, principalmente os desenvolvedores de software,&amp;nbsp;tem uma grande vantagem quando o assunto é internacionalizar a sua carreira. Desenvolver software aqui ou do outro lado do mundo é a mesma coisa, as ferramentas são exatamente as mesmas, o que mudam são mas metodologias e a cultura de cada empresa.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;Por conta dessa facilidade, é frequente vermos brasileiros saindo do país e tendo sucesso lá fora. São histórias como essas que fomentam os sonhos da tão sonhada realização profissional e financeira.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Como esse tema é muito importante,&amp;nbsp;entrevistei por e-mail um colega de trabalho,&amp;nbsp;o Rodrigo Garcia,&amp;nbsp;que saiu do país. Fiz apenas 5 perguntas e ele gentilmente respondeu.&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&lt;STRONG&gt;Vamos iniciar com uma&amp;nbsp;visão geral sobre o Rodrigo Garcia, conte-nos um pouco sobre sua experiência e trajetória profissional na área de TI.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Comecei a trabalhar com TI numa posição completamente contrária a que me encontro hoje, trabalhando com servidores Unix e segurança de redes (uma área que ainda gosto bastante porém sigo como hobby). Em 2003 comecei a trabalhar para uma empresa fábrica de software onde exercia o cargo de network admin, e daí o primeiro contato com desenvolvimento em plataforma Microsoft que dura continuamente até hoje. Além da facilidade que tive pois já trabalhava com TI, tive o privilégio de trabalhar com ótimos profissionais que já estavam desenvolvendo em .NET desde o framework beta (em 2001), o que me proporcionou um aprendizado rápido. De lá, passei por outras empresas (j-tech, Politec e Paradigma), até iniciar as atividades na Polimatica(Itália).&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;B&gt;Além de sua experiência nos EUA trabalhando na área de infra-estrutura, recentemente você teve uma&amp;nbsp;passagem&amp;nbsp;pela Itália, onde atuou como desenvolvedor.&amp;nbsp;Como é o mercado por lá&amp;nbsp;?&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;O mercado de TI é forte no mundo inteiro, principalmente desenvolvimento e na Europa não é diferente. A Itália não está entre os países mais fortes no desenvolvimento (como Irlanda, Inglaterra e Alemanha), porém nas cidades pólos como Turim, Milão e Roma, o déficit de profissionais continua alto.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;O nível do desenvolvedor brasileiro não deixa a desejar em nada, muito pelo contrário, portanto as únicas possíveis barreiras ao desenvolvedor estrangeiro podem ser a lingüística (Italiano e Inglês devem estar afiados), e a documentação para trabalhar legalmente na Itália (se cidadão de qualquer país da comunidade européia não há problema algum, caso contrário necessita um visto de trabalho).&amp;nbsp;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;B&gt;Um dos maiores medos dos imigrantes brasileiros é com o preconceito (xenofobia) por parte dos estrangeiros, você sofreu algum problema desse tipo com os italianos?&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Felizmente nenhum. Este assunto é realmente muito polêmico e complexo em toda a Europa porém não só na Itália como em todos os outros países que visitei nunca sofri preconceito algum. O italiano é muito espontâneo e direto e isso as vezes soa como grosseria para algum estrangeiro mas depois de alguns dias lá, você verá que são "Tutti buona gente".&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;B&gt;Rodrigo, agora a pergunta que não quer calar: Qual é a remuneração média de um desenvolvedor sênior na Europa?&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Na Itália existem algumas formas de contrato (equivalentes a nossa CLT, PJ, etc), porém apenas a mérito informativo o valor bruto em um contrato equivalente a PJ dentre as 3 cidades citadas varia da seguinte forma:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Milão e Roma – 300 a 400 euros por dia.&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Turim – 250 – 350 euros por dia.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Na Irlanda, Inglaterra e Alemanha a remuneração é consideravelmente melhor, e para aquele que almeja apenas guardar um dinheiro para posteriormente retornar o Brasil, é importante lembrar que o pagamento na Inglaterra é em Libras Esterlinas e que o câmbio para real é bem melhor.&lt;/SPAN&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;B&gt;Para finalizar, gostaria que você deixasse uma dica para os brasileiros que almejam uma carreira internacional.&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=EC_MsoNormal&gt;&lt;SPAN lang=PT-BR style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;A dica é planejamento. Escolha bem a cidade onde deseja trabalhar, estude bem o inglês pois você vai usar independente do pais escolhido, faça uma reserva econômica, tire seu visto (ficar ilegal é crime, você não vai conseguir um bom salário e se for deportado não poderá mais pisar lá por um bom tempo), e de preferência procure fazer contato com alguma empresa de lá antes mesmo de ir (existe um site para publicação de currículos que ajuda bastante – &lt;A href="http://www.monster.it/" target=_blank&gt;www.monster.it&lt;/A&gt; ). Esteja preparado pra agüentar a saudade do Brasil e então é só partir.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;&lt;FONT face=Verdana&gt;Rodrigo, muito obrigado por compartilhar sua experiência conosco.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;&lt;FONT face=Verdana&gt;Um grande abraço,&lt;BR&gt;Fernando Vezzali.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6601127" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term=".NET" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/.NET/default.aspx" /><category term="Exterior" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Exterior/default.aspx" /><category term="Europa" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Europa/default.aspx" /><category term="Trabalho fora do Brasil" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Trabalho+fora+do+Brasil/default.aspx" /><category term="Dollar" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Dollar/default.aspx" /></entry><entry><title>Criando templates customizados no Visual Studio .Net</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/09/03/criando-templates-customizados-no-visual-studio-net.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/09/03/criando-templates-customizados-no-visual-studio-net.aspx</id><published>2008-09-03T19:46:00Z</published><updated>2008-09-03T19:46:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;O Visual Studio .Net, desde as primeiras versões, ofereceu a possibilidade de se trabalhar com templates &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;de classes e páginas, a partir da versão 2005 a criação e uso ficou ainda melhor, com a possibilidade de &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;se exportar o &lt;I&gt;template&lt;/I&gt; baseado em uma classe ou página. A vantagem de se utilizar o &lt;I&gt;template&lt;/I&gt; é evitar &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;perda de tempo redigitando as mesmas linhas de código sempre que se inclui uma nova página ou classe no &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;projeto. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;O primeiro passo para se utilizar um &lt;I&gt;template&lt;/I&gt; é adicionar a opção Export Template ao menu File &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;caso a mesma ainda não esteja por lá, para isso clique em Tolls/Customize/Commands, selecione o menu file &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;e arraste o item &lt;I&gt;Export Template&lt;/I&gt; para ele.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template1.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template1.png"&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Com a solução aberta, clique em &lt;EM&gt;File/Export Template&lt;/EM&gt;. Selecione a opção&lt;BR&gt;Item template, selecione o projeto no qual a classe ou página faz parte. Next.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template2.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template2.png"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;Marque todas as classes e páginas que você pretende tornar &lt;EM&gt;template&lt;/EM&gt;. &lt;EM&gt;Next&lt;/EM&gt;.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template3.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template3.png"&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;Marque as referências que você quer usar. &lt;EM&gt;Next&lt;/EM&gt;. &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template4.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template4.png"&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;Na última tela defina um nome e uma descrição para o template e clique em &lt;EM&gt;Finish&lt;/EM&gt;.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template5.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template5.png"&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT face=Calibri size=3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;Agora o &lt;I&gt;template&lt;/I&gt; já está instalado, para testá-lo clique com o botão direito do mouse em cima do projeto, &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;selecione a opção &lt;I&gt;Add New Item&lt;/I&gt;. Nessa tela você tem à disposição os itens do &lt;I&gt;Visial Studio installed templates &lt;/I&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;que são os já conhecidos: &lt;I&gt;Web Form, Master Page, Web User Control&lt;/I&gt;, etc... Logo abaixo você tem à disposição &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;os itens do &lt;I&gt;My Templates&lt;/I&gt;, todos os templates que você criar ficarão nessa área. Basta selecionar o &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;template e definir um nome.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=PT-BR&gt;&lt;IMG src="http://weblogs.asp.net/blogs/fernandovezzali/img/template6.png" mce_src="http://weblogs.asp.net/blogs/fernandovezzali/img/template6.png"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6596156" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author></entry><entry><title>Ajuda aos programadores</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/09/03/ajuda-aos-programadores.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/09/03/ajuda-aos-programadores.aspx</id><published>2008-09-03T13:10:00Z</published><updated>2008-09-03T13:10:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Para um programador crescer profissionalmente, indiscutivelmente o trabalho em equipe é o melhor &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;aprendizado, a troca de informações quando um profissional pede ajuda para o outro ou em uma conversa &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;informal, é bastante enriquecedor. Porém nem todos os programadores trabalham em equipes, muitos codificam &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;sozinhos (não é o meu caso), mas para esses pobres guerreiros solitários nem tudo está perdido. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN lang=PT-BR&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Em muitos fóruns é possível obter aquela ajuda num momento de desespero e também ter uma conversa &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;informal. Alguns fóruns se destacam pela eficiência na obtenção de respostas quase imediatas e de grande &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;qualidade técnica: http://forums.asp.net/ e &lt;A href="http://forums.microsoft.com/"&gt;http://forums.microsoft.com/&lt;/A&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Comecei a colaborar recentemente com o forums.asp.net e já solucionei o problema de três pessoas:&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;A class="" href="http://forums.asp.net/t/1313526.aspx" mce_href="http://forums.asp.net/t/1313526.aspx"&gt;http://forums.asp.net/t/1313526.aspx&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://forums.asp.net/t/1314286.aspx"&gt;http://forums.asp.net/t/1314286.aspx&lt;/A&gt;&lt;BR&gt;&lt;A class="" href="http://forums.asp.net/t/1313025.aspx" mce_href="http://forums.asp.net/t/1313025.aspx"&gt;http://forums.asp.net/t/1313025.aspx&lt;/A&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt; &lt;BR&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN lang=PT-BR&gt;&lt;/SPAN&gt;&lt;SPAN lang=PT-BR&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;ajudando aos outros a gente também aprende!&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6595108" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Forum" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Forum/default.aspx" /><category term="Ajuda" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Ajuda/default.aspx" /><category term="F&amp;#243;runs" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/F_26002300_243_3B00_runs/default.aspx" /></entry><entry><title>Colocando um break point aonde ainda não se tem código</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/08/28/colocando-um-break-point-aonde-ainda-n-227-o-se-tem-c-243-digo.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/08/28/colocando-um-break-point-aonde-ainda-n-227-o-se-tem-c-243-digo.aspx</id><published>2008-08-29T00:12:00Z</published><updated>2008-08-29T00:12:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;Durante o dia-a-dia de trabalho eu me deparo com algumas situações inusitadas, durante esta semana estive acompanhando um colega enquanto ele debugava um código&amp;nbsp;tentando solucionar um bug&amp;nbsp;e sugeri que ele colocasse um break point dentro de um if, para testarmos se a execução do programa passaria por ali. Porém dentro desse if ainda não havia nada codificado. Sem titubear ele declarou uma variável string a = "teste"; e colocou o break point nela. &lt;/P&gt;
&lt;P mce_keep="true"&gt;Opa! Existe um maneira mais elegante de colocar um break point aonde ainda não existe código:&lt;/P&gt;&lt;FONT face="Courier New" size=2&gt;
&lt;P&gt;System.Diagnostics.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Debugger&lt;/FONT&gt;&lt;FONT size=2&gt;.Break();&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Bonito né ?&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&amp;nbsp;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6574808" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Debugger" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Debugger/default.aspx" /><category term="break point" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/break+point/default.aspx" /><category term="break" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/break/default.aspx" /><category term="point" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/point/default.aspx" /></entry><entry><title>Reflection</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/08/26/reflection.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="23385" href="http://weblogs.asp.net/fernandovezzali/attachment/6569442.ashx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/08/26/reflection.aspx</id><published>2008-08-26T22:10:00Z</published><updated>2008-08-26T22:10:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;Reflection é um recurso muito poderoso do Framework da Microsoft, porém não é novidade para ninguém. O motivo desse post é ilustrar um uso prático de reflection. &lt;/P&gt;
&lt;P mce_keep="true"&gt;No nosso exemplo,&amp;nbsp;queremos listar em &lt;EM&gt;run time&lt;/EM&gt; todas as propriedades de uma classe como se elas fossem itens de uma coleção.&lt;/P&gt;
&lt;P mce_keep="true"&gt;A classe em questão herda de object e não implementa nenhuma interface que possibilite iteração, nesse caso somente com reflection poderemos listar as propriedades.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Abaixo segue a implementação sugerida:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;Program&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;{&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; Main(&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;[] args)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;Person&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; oPerson = &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;Person&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oPerson.iAge = 27;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oPerson.sName = &lt;/FONT&gt;&lt;FONT face="Courier New" color=#a31515 size=2&gt;"Fernando Vezzali"&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;PropertyInfo&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;[] properties = oPerson.GetType().GetProperties();&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;foreach&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; (&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;PropertyInfo&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; oPropertyInfo &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;in&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; properties)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;MethodInfo&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; oMethodInfo = &lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;oPerson.GetType().GetMethod(&lt;/FONT&gt;&lt;FONT face="Courier New" color=#a31515 size=2&gt;"get_" &lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;+&amp;nbsp;oPropertyInfo.Name);&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;ParameterInfo&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;[] ArrParameterInfo = oPerson.GetType().GetMethod(&lt;/FONT&gt;&lt;FONT face="Courier New" color=#a31515 size=2&gt;"get_"&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; + oPropertyInfo.Name).GetParameters();&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;Console&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;.WriteLine(oPropertyInfo.Name + &lt;/FONT&gt;&lt;FONT face="Courier New" color=#a31515 size=2&gt;" = "&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; + oMethodInfo.Invoke(oPerson, ArrParameterInfo));&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;Console&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;.Read();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face="Courier New" size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#2b91af size=2&gt;Person&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;{&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;private&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;int&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; _iAge;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;private&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; _sName;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;public&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;int&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; iAge&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;get&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; { &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;return&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; _iAge; }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;set&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; { _iAge = &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;value&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;public&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;string&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; sName&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;get&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; { &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;return&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; _sName; }&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;FONT face="Courier New" color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;set&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt; { _sName = &lt;/FONT&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;value&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Solution: &lt;A href="http://weblogs.asp.net/blogs/fernandovezzali/ReflectionProject.zip" mce_href="http://weblogs.asp.net/blogs/fernandovezzali/ReflectionProject.zip"&gt;ReflectionProject.zip&lt;/A&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6569442" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term=".NET" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/.NET/default.aspx" /><category term="ASP.NET" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/ASP.NET/default.aspx" /><category term="Reflection" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Reflection/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/C_2300_/default.aspx" /><category term="List" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/List/default.aspx" /><category term="Properties" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Properties/default.aspx" /><category term="foreach" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/foreach/default.aspx" /><category term="Property" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Property/default.aspx" /><category term="Collection" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Collection/default.aspx" /></entry><entry><title>Windows Vista, Visual Studio 2008 e IIS 7.0</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/fernandovezzali/archive/2008/08/26/windows-vista-visual-studio-2008-e-iis-7-0.aspx" /><id>http://weblogs.asp.net/fernandovezzali/archive/2008/08/26/windows-vista-visual-studio-2008-e-iis-7-0.aspx</id><published>2008-08-26T15:47:00Z</published><updated>2008-08-26T15:47:00Z</updated><content type="html">&lt;P&gt;Certamente muitos desenvolvedores já estão com o tão esperado Windows Vista e consequentemente com o IIS 7.0 e o Visual Studio 2008. &lt;/P&gt;
&lt;P&gt;Tão certo também são os problemas que todos estão encontrando para criar e/ou abrir projetos web existentes. Para começar são necessários alguns ajustes no IIS Logo depois o VS precisa de mais privilégios. E por aí vai.&lt;/P&gt;
&lt;P&gt;No blog do meu colega &lt;A class="" href="http://www.marcosdellantonio.net/" target=_blank mce_href="http://www.marcosdellantonio.net/"&gt;Marcos Dell Antonio&lt;/A&gt; existe um post bastante esclarecedor:&lt;/P&gt;&lt;A href="http://www.marcosdellantonio.net/2008/08/10/visual-studio-2008-e-iis-70/"&gt;http://www.marcosdellantonio.net/2008/08/10/visual-studio-2008-e-iis-70/&lt;/A&gt; 
&lt;P mce_keep="true"&gt;Abraço.&lt;/P&gt;
&lt;SCRIPT type=text/javascript&gt;
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
&lt;/SCRIPT&gt;

&lt;SCRIPT type=text/javascript&gt;
var pageTracker = _gat._getTracker("UA-5475990-1");
pageTracker._trackPageview();
&lt;/SCRIPT&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6568179" width="1" height="1"&gt;</content><author><name>ferps</name><uri>http://weblogs.asp.net/members/ferps.aspx</uri></author><category term="Vista" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Vista/default.aspx" /><category term="IIS" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/IIS/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/Visual+Studio/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/fernandovezzali/archive/tags/.NET/default.aspx" /></entry></feed>