.Net developer

spam nunca esquece

Ordenando registros de dataset ou datatable

DataView dv = tabela.DefaultView;
dv.Sort = "NOME_CAMPO ASC";
tabela = dv.ToTable();
ds.Tables.Add(tabela);
return ds;

Timeguard


Untitled from anderson bueno on Vimeo.

Internet grátis nos aeroportos

"Infraero anuncia Internet sem fio gratuita em 12 aeroportos do país"
http://noticias.uol.com.br/cotidiano/2008/10/14/ult5772u1079.jhtm

obaaaa!

Edição de imagens

Um mago do Photoshop.. e da fotografia moderna

frase

"O Linux é um câncer que se une a um senso de propriedade intelectual em tudo que toca"
Steve Ballmer


ps. ele estará semana que vem no Brasil.

ps2. queria ir.. :(

O Mago da edição de imagens

Programação a risca



piada infame, mas é verdade.
Junta uma porcaria de um Acer, que gerencia memória que nem a b.... dele, com umVisual Studio o dia inteiro trabalhando, começam a aparecer "riscos" na tela!! ahaha
RNVNI (Riscos Nada-Ver Não Identificado)!!

Site SubmarinoViagens = lixo

Outro lixo.
Já experimentou fazer uma pesquisa de preços de passagens no site do
Submarino Viagens ( www.submarinoviagens.com.br ) ? Por incrivel que
pareça, a pesquisa funciona bem. Mas após apresentar os resultados, a
lista de preços das passagens disponíveis, experimente simplesmente
mudar a data da viagem e refazer a pesquisa. PANZ! Erro de script.
Será que o pessoal da Submarino não testa as páginas. Fala-se tanto em
usabilidade, navegabilidade, web 2.0, blablabla.. e ainda continuam
erros amadores como este, visíveis simplesmente ao testar a
funcionalidade?

ps. vale lembrar que este erro persiste há semanas!

Site da TAM = lixo

Quando não é erro de carregamento da página ( o site
www.megapromo.com.br as vezes funciona... ) , há esses erros de script
básicos!
Repare na imagem que eu não chequei a opção Seguro Assistencia Viagem
de $30,40 , mas mesmo assim o site calcula no valor final do meu
pedido este adicional. E não tem botão de recalcular !! Mesmo marcando
e desmarcando a caixinha, o valor final permanesce intacto e imóvel,
como uma múmia ( igual à outra múmia, a q fez essa página ).

Meu Model Entity Relationship

FWCommerce

frase

"Se vc fala 'meu carro estava em andamento', é pq vc esta trabalhando demais...."
Anderson Bueno


ps. eu trabalho demais! testemunha: Jazz

Criando relacionamentos

ALTER TABLE [dbo].[TB_TABELAFILHA] WITH CHECK ADD CONSTRAINT
[FK_TB_TABELAFILHA_TB_TABELAPAI] FOREIGN KEY([ID_FK_PAI])
REFERENCES [dbo].[TB_TABELAPAI] ([ID_PK_PAI])
GO

Como fazer looping no HashTable


Hashtable hash = new Hashtable();
hash.Add(1, "um");
hash.Add(2, "dois");
hash.Add(3, "tres");

string valor = "";

IDictionaryEnumerator enumerador = hash.GetEnumerator();
while (enumerador.MoveNext())
{
valor = enumerador.Value.ToString();
}


ps. Não esquecer a System.Collections , hein burroide.

quase pronto

tabela LOJA.. a principal do meu framework de ecommerce! Em breve. nas lojas.

Framework E-Commerce

Quase saindo meu framework de e-commerce... Lojas serão produzidas em minutos..

foto: testando css nos diferentes browsers...(suxx!)

Livros, é no Submarino!

server.scripttimeout = ???

Todo spammer é semi-analfabeto

O cara é tão burro que escreveu "GOL Tranportes Aéreos" no final. Toda
mensagem com vírus que simula o email de uma empresa real, sempre tem
algum erro de ortografia, concordância, gramática ou algo do tipo...
E tem mais: "... Devido ao pedido diversas pessoas para a volta da
promoção.. " . Não seria "Devido ao pedido DE diversas pessoas para a
volta da promoção ..." ????

losers..

Fiscalização

São Paulo - Site da Câmara dos Deputados vai hospedar ferramenta
simplificada para acompanhar o uso dos recursos dos Estados e
municípios.

A Comissão Mista de Orçamento lança nesta quarta-feira (03/09) uma
ferramenta de busca que vai permitir que os brasileiros fiscalizem o
orçamento da União. No sistema, será disponibilizado pela internet
relatórios simplificado com as verbas e o detalhamento do que deve ser
feito com esses recursos em cada cidade.

O recursos distribuídos aos Estados e municípios já são disponíveis na
internet, mas com a nova ferramenta a consulta será mais simplificada
e vai incluir o uso dessa verba.

Após o lançamento, marcado para a manhã desta quarta, o ícone
"Fiscalize" estará disponível no seguinte link:

http://www2.camara.gov.br/internet/orcamentobrasil.

Repeater dentro de repeater

<div id="grupo">

<asp:SqlDataSource ID="dtsGrupo" ConnectionString="<% $
ConnectionStrings:SQL %>" DataSourceMode="DataReader"
SelectCommandType="StoredProcedure"
SelectCommand="selectGrupo" runat="server"></asp:SqlDataSource>

<asp:Repeater ID="rptGrupo" DataSourceID="dtsGrupo"
runat="server" OnItemDataBound="rptGrupo_ItemDataBound">
<ItemTemplate>
<h3>
&nbsp;<%# Eval("Nome") %>
</h3>

<ul>
<li class="foruns">Fóruns</li>
<li class="topicos">Tópicos</li>
<li class="topicos">Respostas</li>
<li class="post">Último Post</li>
</ul>

<div id="foruns">

<asp:SqlDataSource ID="dtsForuns"
ConnectionString="<% $ ConnectionStrings:SQL %>"
DataSourceMode="DataReader"
SelectCommandType="StoredProcedure"
SelectCommand="selectForuns" runat="server">
<SelectParameters>
<asp:Parameter Name="GpId"
DefaultValue="" Type="int32" />
</SelectParameters>
</asp:SqlDataSource>

<asp:Repeater ID="rptForuns"
DataSourceID="dtsForuns" runat="server">
<ItemTemplate>

<img src="image/icone.jpg" alt="<%#
Eval("Descricao") %>" />
<ul>

<li class="tituloforum">
<h4><a href="forum.aspx?id=<%#
Eval("Id") %>" title="<%# Eval("Descricao") %>"><%# Eval("Nome")
%></a></h4>
<p><a href="forum.aspx?id=<%#
Eval("Id") %>"><%# Eval("Descricao") %></a></p>
</li>
<li class="topicos">
<p class="numerosforum">05</p>
</li>
<li class="topicos">
<p class="numerosforum">05</p>
</li>
<li class="post">
<p class="postli">24/04/2007, 10:25</p>
</li>
</ul>
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
</div>

using System.Data.Common;

protected void rptGrupo_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if ((e.Item.ItemType == ListItemType.Item) ||
(e.Item.ItemType == ListItemType.AlternatingItem))
{
DbDataRecord dbr = (DbDataRecord)e.Item.DataItem;
SqlDataSource dts = new SqlDataSource();

dts = ((SqlDataSource)e.Item.FindControl("dtsForuns"));
dts.SelectParameters[0].DefaultValue =
DataBinder.Eval(dbr, "Id").ToString();
}
}

É ouro

Copiando Dataset to Hashtable

COMO CHAMAR O MÉTODO:
=========================================================
Hashtable tb = CopiarDatasetToHashTable( SEUDATASET );
ou

Hashtable tb = CopiarDatasetToHashTable( SEUDATASET,
INDICE_COLUNA_VALOR, INDICE_COLUNA_TEXTO, TIPO_DADO_VALOR );
onde...
INDICE_COLUNA_VALOR : Número da coluna de value do dataset,
começando com zero.
INDICE_COLUNA_TEXTO: idem acima, mas para o texto.
TIPO_DADO_VALOR : se a coluna de valor for INT, então 1, caso
contrário, 2.


ex:

//método Metodo() retorna um dataset com 2 colunas, sendo a coluna de
indice 0 o valor, (ID da tabela), e a coluna de indice 1 a coluna de
texto . E o valor é do tipo integer
HashTable ht = CopiarDatasetToHashTable( meuobjeto.Metodo() , 0, 1, 1);




MÉTODOS:
=========================================================


public Hashtable CopiarDatasetToHashTable(DataSet ds, int
coluna_valor, int coluna_texto, int tipo_dado_valor)
{
Hashtable table = new Hashtable();

if (ds.Tables[0].Rows.Count > 0)
{
string texto;
string valor_texto;
int valor_inteiro;
switch (tipo_dado_valor)
{
//Caso tipo de dado do VALOR seja inteiro
case 1:
foreach (DataRow row in ds.Tables[0].Rows)
{
valor_inteiro = Convert.ToInt32(row[coluna_valor]);
texto = row[coluna_texto].ToString();
table.Add(texto, valor_inteiro);
}
break;
//Caso tipo de dado do VALOR e do TEXTO sejam strings
case 2:
foreach (DataRow row in ds.Tables[0].Rows)
{
valor_texto = row[coluna_valor].ToString();
texto = row[coluna_texto].ToString();
table.Add(texto, valor_texto);
}
break;
}

}
return table;
}

public Hashtable CopiarDatasetToHashTable(DataSet ds)
{
return this.CopiarDatasetToHashTable(ds, 0, 1, 1);
}

Copiar um Dataset para um HashTable

COMO CHAMAR O MÉTODO:
=========================================================
Hashtable tb = CopiarDatasetToHashTable( SEUDATASET );
ou

Hashtable tb = CopiarDatasetToHashTable( SEUDATASET,
INDICE_COLUNA_VALOR, INDICE_COLUNA_TEXTO, TIPO_DADO_VALOR );
onde...
INDICE_COLUNA_VALOR : Número da coluna de value do dataset,
começando com zero.
INDICE_COLUNA_TEXTO: idem acima, mas para o texto.
TIPO_DADO_VALOR : se a coluna de valor for INT, então 1, caso
contrário, 2.


ex:

//método Metodo() retorna um dataset com 2 colunas, sendo a coluna de
indice 0 o valor, (ID da tabela), e a coluna de indice 1 a coluna de
texto . E o valor é do tipo integer
HashTable ht = CopiarDatasetToHashTable( meuobjeto.Metodo() , 0, 1, 1);


MÉTODOS:
=========================================================


public Hashtable CopiarDatasetToHashTable(DataSet ds, int
coluna_valor, int coluna_texto, int tipo_dado_valor)
{
Hashtable table = new Hashtable();

if (ds.Tables[0].Rows.Count > 0)
{
string texto;
string valor_texto;
int valor_inteiro;
switch (tipo_dado_valor)
{
//Caso tipo de dado do VALOR seja inteiro
case 1:
foreach (DataRow row in ds.Tables[0].Rows)
{
valor_inteiro = Convert.ToInt32(row[coluna_valor]);
texto = row[coluna_texto].ToString();
table.Add(texto, valor_inteiro);
}
break;
//Caso tipo de dado do VALOR e do TEXTO sejam strings
case 2:
foreach (DataRow row in ds.Tables[0].Rows)
{
valor_texto = row[coluna_valor].ToString();
texto = row[coluna_texto].ToString();
table.Add(texto, valor_texto);
}
break;
}

}
return table;
}

public Hashtable CopiarDatasetToHashTable(DataSet ds)
{
return this.CopiarDatasetToHashTable(ds, 0, 1, 1);
}

Frase do dia

"if you add controls to panels with native ajax in c#, always clean your panels before...."
Anderson Bueno, after fighting with panels for a long time...




Esta página é um quiz em .net, c# + ajax. As alternativas e os argumentos ( em vertical ) são montados dinamicamente, a cada vez que o usuário clica em "Proxima questão". Os labels de todos esses textos estão encadeados em panels... ou seja... algumas horas de trabalho pra conciliar isso com o ajax ( callback...postback... etc )

Frase do dia

"if you add controls to panels with native ajax in c#, always clean your panels before...."

Como adicionar evento a um botão em runtime

botao = new Button();
botao.Text = "Titulo do botao";
botao.Click += new EventHandler(proximaQuestao);


public void proximaQuestao(object sender, EventArgs e)
{
//acao a ser executada
}

panzz

Site da TAM. Porcaria de Java dá nisso! (se fooooosse DotNet...
hmm.. seria bem pior!)

FwCommerce

Loja construída em alguns minutos com o meu novo FwCommerce. Framework
de sistemas adaptado para e-commerce!
Mto...
- .Net
- repeaters
- tableless
- DevExpress
- SubSonic

Plug Ins para sites

tag para adicionar no msn: <a target="_blank"
href="msnim:add?contact=CONTATO@MSN.COM">

tag para falar no skype: <a href="skype:LOGINDOSKYPE?call">

imagem de status do skype: http://mystatus.skype.com/balloon/andersonbueno81

Suporte técnico ACER

Resposta do suporte técnico da Acer referente a um chamado aberto por
problemas no notebook... "vá até o endereço: endereco, cidade".
Grato pela atenção!

Modernidade

1. Você envia e-mail ou MSN para conversar com a pessoa que trabalha
na mesa ao lado da sua;
2. Você usa o celular na garagem de casa para pedir a alguém que o
ajude a desembarcar as compras;
3. Esquecendo seu celular em casa (coisa que você não tinha 10 anos
atrás), você fica apavorado e volta buscá-lo;
4. Você levanta pela manhã e quase que liga o computador antes de tomar o café;
5. Você conhece o significado de naum, tbm, qdo, xau, msm, dps...;
6. Você não sabe o preço de um envelope comum;
7. A maioria das piadas que você conhece, você recebeu por e-mail (e
ainda por cima ri sozinho...);
8. Você fala o nome da firma onde trabalha quando atende ao telefone
em sua própria casa (ou até mesmo o celular !!); Você digita o '0'
para telefonar de sua casa;
10. Você vai ao trabalho quando o dia ainda está clareando, volta para
casa quando já escureceu de novo;
11. Quando seu computador pára de funcionar, parece que foi seu
coração que parou;
11. Você está lendo esta lista e está concordando com a cabeça
12. Você está concordando tão interessado na leitura que nem reparou
que a lista não tem o número 9;
13. Você retornou a lista para verificar se é verdade que falta o
número 9 e nem viu que tem dois números 11;
14 . Você já está pensando para quem você vai enviar esta mensagem;

Cidades do Brasil....

Veja se vc consegue achar Carlópolis-PR no mapa....

Framework de software as a service com skins!

Pic Lens


mais em http://www.piclens.com/

Framework de sistema

Um esqueleto de sistema , com toda a navegacao pronta ( menu, cabeçalho, rodape, blablabla ), padronizado ( classes, nomenclaturas, bd, pastas com tipos de arquivos separados ), webstandards ( css, tableless ), web 2.0 ( ajax ), com funcoes basicas de login, senha, email, e mais soluções corporativas como Workflow, Controle de Acesso e Multilanguage ok

poucas linhas de programacao. Tudo com Subsonic, DevExpress e .Net c# 2.0 !!

Quase pronto...

veja outros skins em: http://demos.devexpress.com/ASPxGridViewDemos/GridEditing/EditModes.aspx

(mude a opção em Select Appearance, no topo da tela)

Notícias importantes

Accenture

MSN + VS

O dia já ia amanhecer, o Visual Studio ainda aberto... e o MSN
deserto. Hora de ir dormir...

Pownce suxx

user smurf1s não tem friends em Flickr??? Como não?
http://www.flickr.com/people/smurf1s

Forma, leia-se Foram

The first one

Tecnologia, festas e futebol