Como retornar mais de um valor separados por vírgula em um subselect

Quando tentamos executar um subselect que retorna mais de um resultado recebemos a seguinte mensagem:


'Msg 512, Level 16, State 1, Line 1
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, < , <= , >, >= or when the subquery is used as an expression.'

Leia mais… »

Tratando erros no csharp

Caros, bom dia!

 

Meu nome é Luis Gustavo de Souza Resende, e é com grande prazer que publico meu primeiro artigo no site mais popular de csharp do Brasil. Espero que gostem e esse seja o primeiro de muitos.

 

Tratando os erros no csharp.

 

Todos os erros gerados em tempo de execução na plataforma .NET geram uma exceção. Existe várias formas de tratar esses erros ao invés de explodir o erro para o usuário. Então vamos lá:

Leia mais… »

Criando Objetos em Tempo de Execução

Vou explicar de maneira simples e exemplificada sobre criação de objetos em tempo de execução.

Vou mostrar um modelo prático. Imagine a seguinte situação. Você possui um webservice que envia consultas SQL para um cliente feito em Windows Form. Nesse cliente, existirá uma aba para cada consulta com um grid para exibir a consulta.
Imagine o trabalho de ter que adicionar uma aba, um grid, configurar o cabeçalho de cada coluna desse grid? Retrabalho certo?

Como sou preguiçoso, pensei em uma forma mais prática. E que tal se o integrador fosse inteligente a ponto de montar suas próprias abas, com um grid dentro e tudo vier configurado do webservice? Não seria necessário a manutenção no programa cliente caso uma nova consulta fosse adicionada, certo?
Leia mais… »

Extension Methods

Extension Methods é uma nova característica presente apartir do C# 3.0 e que permitem adicionarmos métodos para tipos existentes sem criar um novo tipo derivado, recompilar ou modificar o tipo original. Extension Methods são um tipo especial de método estático, mas eles são chamados como se fossem métodos de instância no tipo estendido.

Leia mais… »

C# Brasil de cara nova e com novidades

Desde o lançamento do C# Brasil procuramos sempre deixa-lo o mais agradável possível para que você pudesse sempre visitar e encontrar com maior facilidade o que precisa.

Recentemente nós do C# Brasil e a equipe do Projetos e TI lançamos o fórum e abrimos esse espaço para os leitores interagirem e conhecer mais sobre o assunto que lhe interessa.

Outro lançamento foi a área de download de fontes que anunciamos através do Twitter. Essa área disponibilizaremos para você os fontes de nossos artigos além de outros fontes indicados por leitores e por nós.

Mais uma vez em conjunto com a equipe do Projetos e TI estamos lançando um tema próprio do C# Brasil com o brasão criado por nossa equipe.

Fique por dentro das últimas novidades nos seguindo no Twitter.

Abraço e até a próxima.

Criando eventos personalizados em UserControl no ASP.NET

Nem sempre os componentes atuais do ASP.NET atendem por completo as nossas necessidades. Com isso muitas vezes precisamos implementar funcionalidades e que também na maioria das vezes necessitam ser reutilizadas. O funcionalidade de um UserControl, é essa, criar controles personalizados que possam ser reutilizados.

É esse o objetivo desse artigo de hoje, criar um UserControl que possua funcionalidade que possam ser reutilizadas como se fosse um componente.

Leia mais… »

jQuery WebControls para ASP.NET

Quem já desenvolve websites independente da linguagem já deve conhecer o excelente framework chamado jQuery.

O jQuery é um framework JavaScript criado com o intuito de facilitar a vida do programador, dando lhe a possibilidade de se preocuparem mais com a logica do desenvolvimento do que com a compatibilidade entre browser e ele é hoje o framework mais utilizado e na minha opinião o melhor e mais fácil.

Leia mais… »

LINQ – Language Integrated Query

Recentemente recebi a 2ª edição do livro “Como programar com ASP.NET e C#” do autor Alfredo Lotar enviado como cortesia pela Editora Novatec para fazer uma resenha sobre ele. Como já conheço a qualidade do trabalho do Alfredo Lotar então dei inicio ao estudo sobre LINQ que era o meu maior interesse até então.

Leia mais… »

Como Programar com ASP.NET e C# – Editora Novatec

Recebi essa semana da Editora Novatec um exemplar de um livro na qual já possuia sua 1ª edição. Estou falando da 2ª edição do livro “Como programar com ASP.NET e C#” do autor Alfredo Lotar.

Para você que esta aprendendo C# e que focar seu aprendizado em ASP.NET ele é um excelente livro. Diferente de sua 1ª edição, ele aborda a versão mais atual do ASP.NET e C# que estão na versão 4.0.

Diferente dos outros livros que já tive, o da Editora Novatec e em especial do Alfredo Lotar são muito didádicos, apresentam vários exemplos, códigos, tutoriais, dicas, truques além de serem bem ilustrados. Ideal para você iniciante ou até mesmo para os que já estão familiarizados com a linguagem e pretendem se atualizar.

Para nós que já estamos envolvidos com ASP.NET e C# desda versão anterior, é uma otima opção para se atualizar e aprender os novos recursos disponiveis como: Entity Framework, roteamento de URLs, LINQ, etc.

Leia mais… »

CShared #1 – [C#] Contagem de dias úteis entre duas datas.

Dando inicio a série de postagens com dicas úteis, códigos simples e funcionais que durante o dia-a-dia do desenvolvedor podem ser necessárias.
Hoje vou deixar uma função que pode ajudar bastante, ela conta quantos dias úteis existem entre duas datas, melhor dizendo em um período e a principio sem considerar feriados. Claro que apesar de não ter feriados é possível que você estenda esta ideia e incluir na lógica para não contar feriados também, por exemplo, ter um cadastro com os feriados e dias não trabalhados e ir consultando por uma lista com LINQ (find).
Segue o método:


        public int GetDiffDays(DateTime initialDate, DateTime finalDate)
        {
            int days = 0;
            int daysCount = 0;
            days = initialDate.Subtract(finalDate).Days;

            //Módulo 
            if (days < 0)
                days = days * -1;

            for (int i = 1; i <= days; i++)
            {
                initialDate = initialDate.AddDays(1);
                //Conta apenas dias da semana.
                if (initialDate.DayOfWeek != DayOfWeek.Sunday && 
                    initialDate.DayOfWeek != DayOfWeek.Saturday)
                    daysCount++;
            }
            return daysCount;
        }

Por hoje é isso, simples assim. “Quem complica se estrumbica”.
Aproveitando, caso você queria algum tópico escreva e deixe a sua sugestão.
Siga-me no twitter: @thiagosatoshi

“A mente que se abre a uma nova idéia jamais voltará a seu tamanho original.” – Albert Einstein

Imagens no Reportviewer 2010

Olá leitor. Após um questionamento de um amigo feito na semana passada, sobre como apresentar imagens no ReportViewer de um banco de dados, chego a este post. O processo de salvar consultar os dados da aplicação/banco de dados não mencionarei (o foco é apenas do relatório com imagens), mostrarei como apresentar imagens a partir de uma classe no relatório. Utilizarei o Microsoft Visual Studio 2010, .Net Framework 4.0, ReportViewer desta versão e o mesmo será feito em Windows Forms, mas a ideia pode ser expandida para web facilmente.
Vale lembrar que este post tem como objetivo apenas mostrar como fazer o relatório, portanto a estrutura das classes para pesquisa, lógica, etc. será forjada e estará em apenas um projeto. Isso para facilitar, frisando que não é uma boa prática.

Leia mais… »

Observer

Antes de falar do Observer é necessário entender o que é Design Pattern, ou padrão de desenho de software, eles descrevem soluções para problemas recorrentes no desenvolvimento de sistemas que utilizam a O.O. – Orientação a Objetos. Um padrão define um problema, a solução deste problema, a situação onde aplicar esta solução e suas conseqüências e o nome deste.

Leia mais… »

Manipulando arquivos Excel sem uso da interoperabilidade ou conexão OLEDB

Como é de costume, sempre compartilho a minhas experiências e necessidades do dia a dia com você.

Recentemente tive a necessidade de ler um arquivo Excel em um WebService, porem o servidor na qual está hospedado não possui o Office instalado e nem poderia porque no final das contas seria necessário instala-lo em 3 servidores.

Com isso comecei a procurar por soluções e até que cheguei a solução criada pelo chinês Liu Junfeng que tambem possui uma materia no site do Code Project e seu fonte disponível no Google Code.

Leia mais… »

Dica – Limitando a quantidade caracteres em um TextBox do tipo Multiline

Você já tentou utilizar o MaxLength do TextBox quando esse esta com TextMode igual a MultiLine?

No TextBox o TextMode é uma propriedade na qual definimos o tipo de campo será ele. Existem 3 tipos:

  • SingleLine: após renderizado o HTML, será gerado um simples input do tipo Text;
  • Password: será gerado um input do tipo Password;
  • MultiLine: diferente dos anteriores será gerado um TextArea e esse não possui a propriedade MaxLength.

Leia mais… »

Vem ai a semana de Interoperabilidade

Olá pessoal, para ajudar um pouco na divulgação, compartilhar e informar aos nossos amigos desenvolvedores, vai ocorrer a semana da Interoperabilidade.

Esse evento abordará assuntos muito interessantes por profissionais da comunidade técnica.
Os eventos ocorrerá entre os dias 18 e 22 de janeiro e terá vários WebCast.

Leia mais… »