Túlio Henrique

TheWorldException

Entries Tagged as 'C# 3.0'

Mudanças no LINQ to SQL Beta 2 para o RTM

No dia 19/11/2007 saiu o tão esperado visual studio 2008 com suas 250 novidades, entre elas a versão final do Linq que teve algumas alterações, abaixo a lista com os quatro métodos que tiveram o seu nome trocado.

Método Anterior
(VS2008 Beta1 e Beta2)
Método Renomeado
(VS 2008 RTM)
Add() InsertOnSubmit()
AddAll() InsertAllOnSubmit()
Remove() DeleteOnSubmit()
RemoveAll() DeleteAllOnSubmit()

Mais Info
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2060651&SiteID=1

Métodos de Extensão (Extension Methods)

No C# 3.0 e .NET 3.5 tem uma grande novidade quando queremos declarar um método, trata-se do métodos de extensão (extension methods).

Quando se usa o this (na declaração do primeiro parametro do método), nâo se passa a variável no paramentro mais sim declara antes: variável.método();

Abaixo um exemplo simples de um código:

Using Saudacao;
public class Programa
{
public class MetotoQualquer()
{
String Nome = “Túlio”;
Nome.Ola();
Console.Write(nome);
}
}

namespace Saudacao
{
public static class Saudacao
{
public static string Ola(this nome)
{
return String.Format(”Olá {0}”, nome);
}
}
}

Quando você dê o Using no namespace Saudacao você terá o método Ola() disponivel para todos os Objetos String do escopo.

Uma característica muito importante dos métodos de extensão é que eles podem ser adicionados a tipos base. A classe object, por exemplo, pode ser estendida para ter um método qualquer e consequentemente ele estará disponível para todas as outras classes do framework e da aplicação.

Nullables Types

Em certas situações e muito útlil fazer uma váriavel aceitar o tipo Null.
No C# para uma variável aceitar Null basta adicionar “?” após a definição da tipagem da variável.

Exemplos:

string? Nome = null;
Nome = “Túlio”;

int? valor = null;
if (valor == null)
{
valor = 1;
}

Melhor visualizado em: 1024 x 768 pixels
Navegador: I.E. 7.x, Firefox 2.x ou Opera 9.x

XHTML 1.0 CSS 2.0 Firefox Brasil
Copyright © 2007 Túlio Henrique.