teste art. 1

sd d asdasdsd
Posted por libotti with no comments
Filed under:

Cadê Minhas Templates do Visual Studio 2005 ?

Já é a segunda vez que isso acontece comigo ao instalar o VS 2005.... Ao tentar criar um projeto ou adicionar um item a um  projeto já existente descubro que todas as templates simplesmente não exitem....

cadeMinhasTemplates01.JPG

cadeMinhasTemplates02.JPG

 

Para corrigir este problema:

cadeMinhasTemplates03.JPG

 

Estranho pois a única coisa "diferente" que tenho feito nas minhas instalações é escolher a opção personalizada e acrescentar a opção QuickStart Samples que vem desabilitada por padrão.

 

Posted por libotti with no comments
Filed under:

Personalizando as Mensagens Enviadas pelo Password Recovery

passwordrecovery.JPG

Um dos controles que gostei bastante no aspnet 2.0 foi o password recovery. Pretendo demonstrar de forma resumida como personalizar a mensagem enviada para o usuário com a senha/nova senha gerada, pois a mensagem vêm, por padrão, em inglês... Algo mais ou menos assim:

Please return to the site and log in using the following information.
User Name: fulano
Password: Wj=%Q:IWMmVe/]

1o. passo) Seu controle PasswordRecovery possui uma propriedade chamada MailDefinition. Procure por ela e altere a propriedade BodyFileName para o caminho do arquivo que conterá nosso layout.

<

asp:PasswordRecovery ID="PasswordRecovery1" runat="server"> 
    ...
    <
MailDefinition Priority="High" BodyFileName="~/passwordrecover.txt">
FONT color=#800000 size=2>MailDefinition>
FONT size=2></asp:PasswordRecovery>

2o. passo) Crie o arquivo .txt dentro de seu aplicativo asp.net, por exemplo, passwordrecover.txt, com a formatação que deseja que o usuário receba.

Olá!

Para sua segurança, uma nova senha foi gerada automaticamente.
Por favor, retorne ao site e efetue seu login usando as informações a seguir:

Seu nome de usuário: <% UserName %>
Sua nova senha: <% Password %>

Obrigado.

* Caso deseje alterar a senha, após o login, acesse a opção "trocar senha" em sua área de cliente.

Só isso!

Obs: Também é possível alterar o BodyMessage através do evento SendingMail do controle:

Protected

Sub PasswordRecovery1_SendingMail(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.MailMessageEventArgs) Handles PasswordRecovery1.SendingMail
        e.Message.Body = "Informação relevante para o usuário...";
End
Sub

 

[]´s

Posted por libotti with no comments
Filed under:

Comentando o Código Com Som

Legal isso de comentar com som o código. Já imaginou a cena: ao abrir o código de uma tela antiga feita por um ex-colega de trabalho ouvir a voz dele dizendo "Se está realmente precisando alterar algo aqui, tu tá f...." hehehe
Meio louco esse negócio, mas pode ser bem interessante também... Infelizmente, não consegui baixar nem recebi retorno para testar. :(

vclogo.gif

What is VoiceComments?

VoiceComments is a productivity add-in for Visual Studio that allows you to add sound to your code using code comments.

[To read the story of coming up with this idea, see
Reasoning Behind VoiceComments]

Have you ever wondered if you could just dictate what you think and get it automatically added as a comment? Well, VoiceComments does not perform voice recognition yet, it just stores a link in your code to your voice recording.

playicon.gif

mais em http://dev.devbiz.com/blogs/hakan/archive/2005/08/03/voice_comments.aspx
Posted por libotti with no comments
Filed under:

Deploy Web

É muito comum aparecerem pessoas nos grupos perguntando sobre quais arquivos devem subir para o servidor de produção após o desenvolvimento com o Visual Studio. Uma breve explicação para esta dúvida é que o Code-behind do Visual Studio, como diz o nome, separa código e HTML  em arquivos diferentes para que não seja mais necessário enviar os arquivos fonte para o servidor de produção (além de deixar o código bem mais elegante ou alguém não se lembra da zona que era no ASP3 o código e html misturados???).  Resumindo: no lugar dos arquivos fonte, apenas as dlls são necessárias.

Longe de ser a solução definitiva de segurança para o código, mas já é um bom início para evitar curiosos bisbilhotando (muitas vezes com segundas, terceiras e quartas intenções). 
 
Como solução para facilitar a vida do desenvolvedor que precisa ficar separando quais arquivos subir para o servidor de produção na hora de atualizar o sistema, existe uma ferramenta gratuita chamada UnleashIt. Ele integra-se ao VS.NET 2003 como um add-in e você pode criar perfis de desenvolvimento e compartilha-los com outros desenvolvedores de seu grupo de trabalho. 

Recomendo, até mesmo para os não iniciantes pois agiliza bastante as coisas na manutenção de grandes sistemas web. Tenho utilizado ele com muito sucesso após alguns pequenos ajustes apenas nas extensões dos arquivos a subir...

UnleashIt.jpg

 

Posted por libotti with 13 comment(s)
Filed under:

Validação no Cliente com Javascript e Regex

   Após ler um artigo do Ramon Durães "ASP.NET 2.0 - Client Callback dando mais inteligência no cliente". Fiquei pensando em fazer algo em JavaScript para validar os dados no lado cliente evitando postbacks desnecessário no servidor. Pensei a princípio em usar um método genérico em JavaScript com Expressões Regulares de modo que pudesse passar o tipo de dado validado como parâmetro.... A seguir minhas conclusões a respeito:

   Apesar do artigo citado ser recomendado para Visual Studio 2005, meu trabalho foi totalmente testado em ambiente 1.1 Com Visual Studio 2003.
Diferente do artigo, no meu caso, eu disparo o evento no cliente sempre que um valor é digitado na textbox e ela perde o foco.  Uma mensagem de alerta é exibida (caso o conteudo nao tenha passado na validação) e logo a seguir o controle recebe novamente foco. Achei assim, uma forma muito interessante de evitar postbacks desnecessários no servidor.

   Em 1o lugar, o javascript : Vou colocar em um arquivo separado .js para que possa ser reaproveitado em outros formulários.
Pegue o arquivo validacoesgenericas.js completo aqui 

   Feito isso, em nosso formulario .aspx, precisaremos adicionar referencia ao nosso script :

   Feito isso, agora será necessário fazer uma pequena alteração na TAG de cada textbox que será validado em nosso formulário:

   Resumindo:

  1. Apenas o ID não me foi suficiente para fazer o javascript achar o controle, então declarei um name para o objeto.
  2. Apesar do controle continuar sendo Server Control, definimos o evento OnBlur pra ele e chamamos nosso Javascript criado anteriormente.

   onBlur="valida(this,'email','email');"

      Explicando os parâmetros do método valida:

  • O 1o. parâmetro é o próprio objeto (this)
  • O 2o parametro : a label que sera exibida na mensagem de erro 
  • O 3o parâmetro :  o tipo de validação que será usada (alfabetico, alfanumerico, texto, numerico, telefone, data, email, moeda, cep, horario, uf ou sexo). Dê uma olhada no arquivo validacoesgenericas.js para entender melhor.

    3.  Quando o controle perde o foco, a validação é testada e caso não passe o controle recebe foco novamente

   Considerações finais:  de forma alguma, pretendo com isso substituir a validação no lado servidor, mas apenas complementar validando antes no cliente.

   E então, o que acham ?

 

  
Posted por libotti with 8 comment(s)
Filed under:

Layout Sem Tabelas

A algum tempo atrás, quando precisa montar um layout mais complexo de um site, era comum que se usasse o recurso de incluir <table> dentro de <table> até conseguir o efeito desejado. Na verdade, ferramentas como o dreamweaver, faziam isso muito bem. Acho que essa facilidade acabou ajudando na popularização da ferramenta.

Hoje, apesar da evolução e popularização de recursos CSS, ainda vejo muita gente usando recursos ultrapassados que acabam por prejudicar a performance à medida que se acrescentam muitas tags e html desnecessario às páginas web.

Desejo demonstrar aqui como usar conceitos de CSS em substituição ao ultrapassado modelo de utilizacao de tabelas para formação de layout.

Primeiramente, se vc não conhece CSS e nunca ouviu falar de Box Model, dê uma olhada em http://geocities.yahoo.com.br/doc2web/W3C/CSS1/REC-CSS1-19990111.html#formatting-model.  O Box Model foi definido pelo W3C nas Recomendações para CSS1 publicadas em 1996 e é o primeiro fundamento para desenvolvimento de layout CSS.

Vamos então a um exemplo prático: uma página simples com uma área de topo e três áreas abaixo dela (esquerda, centro e direita).

Definindo os estilos em arquivo separado (styles.css):

#top

{
   margin: 10px;
   padding: 10px;
   background: #ccc;
   height: 60px;
   width: 780px;
   margin-left: 10px;
}

#left

{
  
background: #eeeeee;
   position: absolute
   left: 10px;
   top: 115px;
   width: 200px;
   margin-left: 10px;
}

#center

{
  
background: #cccccc;
   margin-top: 0;
   margin-left: 220px;
   width: 470px;
}

#right

{
  
background: #eeeeee;
   position: absolute;
   margin-left: 700px;
   width: 110px;
   top: 115px;
}


Agora nosso arquivo HTML, ASPX, ou qualquer coisa assim... :P

<

head runat="server">
    <link REL=stylesheet HREF=styles.css TYPE
=text/css>
</
head
>

<

body>

    <
div id="top"> REGIAO DO TOPO </div>
    <div id="left"> REGIAO DA ESQUERDA </div> 
    <div id="center"> REGIAO DO CENTRO </div> 
    <div id="right"> REGIAO DA DIREITA </div> 

 </
body>
</
html>
O resultado obtido será semelhante a este:
LAYOUTSEMTABELA_01.jpg

Ficou mais fácil, né ?! Agora a imaginação é quem manda (user controls, javascript, html estatico, etc...)  

E já que falei em javascript, é perfeitamente possível trocar o conteudo de uma DIV, sem precisar rodar a página no servidor novamente. Se for essa a intenção, basta acessar a propriedade innerHTML da DIV. Por exemplo:

<

script language="JavaScript">
   
left.innerHTML='BLA BLA BLA';
</script>Alguma sugestão????
 
Posted por libotti with no comments
Filed under:

Blogs dos Desenvolvedores do Visual Studio 2005

Não sei se os amigos já conhecem mas a MS divulga os blogs do seu Grupo de criação do VS 2005. Como a versão ainda não foi lançada é uma boa forma de descobrir as coisas novas que eles estão colocando por lá....

O Time está dividido em :

  • Architects
  • Developers
  • Project Managers
  • Team Development
  • Testers
  • Posted por libotti with no comments
    Filed under:

    Diagramas em .Net

    SourceForge.net Logo

    Uma iniciativa muito interessante para desenvolver diagramas complexos em .Net é a utilização do projeto Netron. Vale a pena dar uma olhada.... http://netron.sourceforge.net

    Mais screenshots do que anda se fazendo com ele podem ser vistos aqui: http://netron.sourceforge.net/ewiki/netron.php?id=NetronScreenshots

    internal://10b2fdcadd6a0d1ac6def83f448b0e3d.jpeg
    Posted por libotti with no comments
    Filed under: