Aprenda com o MSDN Experience

Postado por Daniel Garcia às 09:41 DOMINGO, 12 DE JULHO DE 2009

O MSDN Experience On-Line foi desenvolvido com o intuito de oferecer a você um ambiente totalmente intuitivo para realização dos programas de treinamento do MSDN Brasil.

Primeiramente você deve conhecer os detalhes do conteúdo exposto e o funcionamento de seus módulos, depois você determina um cronograma pessoal de estudo (baixa o material de estudo e os vídeos). Quando você se sentir capaz, dever fazer as provas atestando seu conhecimento.

Para as provas concluídas com êxito e especialidades alcançadas você receberá ainda um certificado on-line que será acessado na página de provas disponíveis.

Viva essa experiência!

http://msdn.microsoft.com/pt-br/dd366110.aspx

Ninguém avaliou. Dê sua nota!

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

ASP.NET | C# | Treinamento | VB.NET

Calculando o Valor do SEDEX com ASP.NET

Postado por Daniel Garcia às 11:37 SÁBADO, 11 DE JULHO DE 2009

Neste post mostrarei um dica que é muito útil principalmente para quem está desenvolvendo um site de e-commerce, o cálculo do valor de envio via SEDEX dos Correios.

Os Correios disponibiliza em seu site uma URL que efetua o calculo prá você. Vou demostrar como implementamos isso dentro do ASP.NET.

Para isso seguiremos os seguintes passos:

1 - Crie um formulário com os seguintes campos: "Serviço", "CEP de Origem", "CEP Destino", "Peso", "Em Mãos", "Valor Declarado" e "Aviso de Recebimento".

A seguir, o Código do formulário:
       ...
      <table cellpadding="0" cellspacing="0">
            <tr>
                  <td>Serviço:&nbsp;&nbsp;</td>
                  <td>
                        <asp:DropDownList ID="ddlServico" runat="server">
                              <asp:ListItem Value="40010">SEDEX</asp:ListItem>
                              <asp:ListItem Value="40215">SEDEX 10</asp:ListItem>
                        </asp:DropDownList>
                  </td>
            </tr>
            <tr>
                  <td>CEP de Origem:&nbsp;&nbsp;</td>
                  <td><asp:TextBox ID="txtCEPOrigem" runat="server"></asp:TextBox></td>
            </tr>
            <tr>
                  <td>CEP de Destino:&nbsp;&nbsp;</td>
                  <td><asp:TextBox ID="txtCEPDesino" runat="server"></asp:TextBox></td>
            </tr>
            <tr>
                  <td>Peso:&nbsp;&nbsp;</td>
                  <td><asp:TextBox ID="txtPeso" runat="server" Width="80px"></asp:TextBox></td>
            </tr>
            <tr>
                  <td>Em Mãos:&nbsp;&nbsp;</td>
                  <td>
                        <asp:DropDownList ID="ddlEmMaos" runat="server">
                              <asp:ListItem Value="s">Sim</asp:ListItem>
                              <asp:ListItem Value="n">Não</asp:ListItem>
                        </asp:DropDownList>
                  </td>
            </tr>
            <tr>
                  <td>Valor Declarado:&nbsp;&nbsp;</td>
                  <td><asp:TextBox ID="txtValorDeclarado" runat="server"></asp:TextBox></td>
            </tr>
            <tr>
                  <td>Aviso Recebimento:&nbsp;&nbsp;</td>
                  <td>
                        <asp:DropDownList ID="ddlAvisoRecebimento" runat="server">
                              <asp:ListItem Value="s">Sim</asp:ListItem>
                              <asp:ListItem Value="n">Não</asp:ListItem>
                        </asp:DropDownList>
                  </td>
            </tr>
            <tr>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
            </tr>
            <tr>
                  <td>&nbsp;</td>
                  <td style="margin-left: 40px">
                        <asp:Button ID="btnCalcular" runat="server" Text="Calcular" onclick="btnCalcular_Click" style="height: 26px" />
                  </td>
            </tr>
            <tr>
                  <td>&nbsp;</td>
                  <td>&nbsp;</td>
            </tr>
            <tr>
                  <td colspan="2">
                        <asp:Label ID="lblValor" runat="server" style="text-align: center"></asp:Label>
                  </td>
            </tr>
      </table>
       ...

* Observe os valores de cada ListItem dos DropDowLists "ddlServico", "ddlMaoPropria" e "ddlAvisoRecebimento". Eles devem permanecer os mesmo para que a consulta ocorra corretamente.

2 - Implemente o evento Click do botão "btnCalcular".

protected void btnCalcular_Click(object sender, EventArgs e)
{
        try
        {
               HttpWebRequest req;
               HttpWebResponse resp; 
               DataSet ds; 
               StreamReader sr;
// 1 - Atribui os valores dos campos a variáveis
string servico = ddlServico.SelectedValue;
string cepOrigem = txtCEPOrigem.Text;
string cepDestino = txtCEPDesino.Text;
string peso = txtPeso.Text;
string maopropria = ddlEmMaos.SelectedValue;
string avisorecebimento = ddlAvisoRecebimento.SelectedValue;

// 2 - Faz uma requisição a URL passando os valores selecionados via QueryString (resposta em XML)
req = (HttpWebRequest)WebRequest.Create("http://www.correios.com.br/encomendas/precos/calculo.cfm?" +
                                                            "Servico=" + servico + "&cepOrigem=" + cepOrigem + "&cepDestino=" + cepDestino +
                                                            "&peso=" + peso.Replace(",", ".") + "&MaoPropria=" + maopropria + 
                                                            "&AvisoRecebimento=" + avisorecebimento + "&resposta=xml");

// 3 - Armazena a resposta da requisição
resp = (HttpWebResponse)req.GetResponse();

// 4 - Converte a resposta (XML) da requisição para um StreamReader
sr = new StreamReader(resp.GetResponseStream(), System.Text.Encoding.UTF8); ds = new DataSet();

// 5 - Lê o StreamReader (XML) e carrega em um DataSet
ds.ReadXml(sr);

sr.Close();
resp.Close();

// 6 - Verifica se a consulta retornou erro
if (Convert.ToInt32(ds.Tables["erro"].Rows[0]["codigo"]) != 0)
{
      throw new Exception(ds.Tables["erro"].Rows[0]["descricao"].ToString());
}
// 7 - Caso a Consulta não tenha retornado erro, carrega o resultado no Label
else
{
      lblValor.Text = ds.Tables["Dados_Postais"].Rows[0]["preco_postal"].ToString().Replace(".", ",");
}

}
catch (Exception ex)

        lblValor.Text = ex.Message;
}

}

3 - Finalmente, está pronto. Ao clicar no botão "Calcular" o resultado será esse:

E ai, gostaram? Espero que esta dica seja útil prá vocês!

5.0 ponto(s). Avaliado por 2 pessoas

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

ASP.NET | C# | E-Commerce

Desabilitando Finais de Semana no Calendar do ASP.NET

Postado por Daniel Garcia às 09:36 SEXTA-FEIRA, 10 DE JULHO DE 2009

Alguns tipos de aplicação que utilizam o calendar como por exemplo agendas que trabalham somente com dias úteis, necessitam de tratamento para evitar que eventos sejam agendados nos finais de semana em outros dias não úteis.

Para desabilitar os finais de semana basta implementar o evento DayRender da seguinte maneira:

protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
{
      if (e.Day.IsWeekend) 
      {
            e.Day.IsSelectable =
false;
      }
}

Muito simples, não?

Até a próxima e bons códigos!

Ninguém avaliou. Dê sua nota!

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

ASP.NET | C#

Adicionando um Web User Control em um Webform dinamicamente

Postado por Daniel Garcia às 16:23 QUINTA-FEIRA, 9 DE JULHO DE 2009

Neste post mostratei com é simples adicionar um User Control dinamicamente em um Webform.

Veja o código da página a seguir:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head runat="server">
      <title></title>
</
head>
<
body>
      <form id="form1" runat="server">
      <div>
            <asp:Label ID="lblCabecalho" runat="server" Text="Label"></asp:Label>
            <asp:Label ID="lblRodape" runat="server" Text="Label"></asp:Label>
      </div>
      </form>
</
body>
</
html>

Para adicionar um User Control entre os labels "lblCabecalho" e "lblRodape" seguiremos os seguintes passos:

1 - Adicione um PlaceHolder entre os labels "lblCabecalho" e "lblRodape". O código ficará da seguinte forma:

...

<asp:Label ID="lblCabecalho" runat="server" Text="Label"></asp:Label>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
<asp:Label ID="lblRodape" runat="server" Text="Label"></asp:Label>

...

2 - Use o método LoadControl para passando o nome do UserControl para carregá-lo. E adicione-o ao PlaceHolder.

protected void Page_Load(object sender, EventArgs e)
{
     Control ctrl = LoadControl("UserCtrl.ascx");

     PlaceHolder1.Controls.Add(ctrl);
}

Espero que tenham gostado!

5.0 ponto(s). Avaliado por 1 pessoas

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

ASP.NET | C#

Sobre o Autor

Daniel Garcia - MCP, MCTS, MCPD
Meu nome é Daniel Garcia, venho atuando no mercado de tecnologia há mais de uma década. Durante esse tempo tive a oportunidade de trabalhar com diversas tecnologias, principalmente Microsoft. Conquistei os títulos: MCP, MCTS, MCDP e MCT. Desde então, venho contribuindo com toda a Comunidade, divulgando meu conhecimento das tecnologias Microsoft.