Alexis Moura: Desenvolvimento de aplicativos moveis: Com o sucesso das tecnologias moveis a demanda por aplicativos esta aumentando a cada dia . Com o mercado iPhone, IPAD, Android e Bla... Que legal ja chegou a versao 4 do ASP NET MVC, particularmente sempre trabalhei com MVC e o melhor que ah e sem duvida esta nova versao esta com muita coisa b as novidades sao:Desenvolvimento e implantacao: Suavizar o fluxo de trabalho de desenvolvimento e implantacao ser mais facil, melhor e mais rapido.Capitalizar sobre a plataforma: O mecanismo de exibicao Razon continuidade e melhorias.HTML5, tablet, e moveis: Ha uma tendencia da industria para a construcao de aplicacoes moveis e tablet. Uma aplicacao HTML5 fornece a opcao mais ampla distribuicao possivel alem do uso do Jquery Mobile.Nuvem pronto: Implantacao e hospedagem de aplicacoes web na nuvem (como no Windows Azure) mais rapido e facil. Diferenca nas telas com MVC 3 e MVC4 Modelo de projeto com layouts Mobile Visualizacao especifica para Moblie adicionando um sufixo de nome de arquivo "Mobile"Maiores informacoes no link. Vamos ficar ligados nessa nova versao!! Ola agora vamos criar um dropdown em um projeto MVC3 o dropdown cria dinamicamente um select o codigo fonte encontra-se disponivel no msdn entao vamos la, primeiramente vamos criar um projeto do zero (voce pode inserir o nome que quiser).Vamos adicionar na pasta Models uma nova classe com o nome de cidades ela nao ira conter os atributos do anotation mas (nao sera nessario para o exemplo). C#<span style="font-size: small;" _mce_style="font-size: small;">using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace testeSelectItem.Models { /// <summary> /// Model de cidade /// </summary> public class Cidades { /// <summary> /// Codigo da cidade /// </summary> public int idCidade { get; set; } /// <summary> /// Nome da cidade /// </summary> public string nomeCidade { get; set; } } }</span>Vamos criar um novo projeto de nome infraestrutura poderia criar a classe na mesmo projeto mas por questao de organizacao preferivel separar os componentes reaproveitaveis em um outro projeto, quando for desenvolver outro projeto MVC nao precisar copiar a classe novamente.Vamos criar uma classe de nome DropDown que vai criar dinamicamente o objeto consumido pelo Html.DropDownList veja que utilizei duas lambda expression como parametro de texto e valor do nosso dropdown existe uma grande vantagem nisso em vez de deixar o parametro como uma string.1 - Obriga a sempre ser um objeto a carregar o DropDown ou melhor dizendo nao um objeto estranho que nao esta acessivel diretamente da aplicacao.2 - Evita erros na classe devido a parametros informados de forma incorreta escritos errados ou alterados, qualquer um destes cenarios seja gerado um erro de parametro incorreto e nao um erro dentro da classe. C#using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web.Mvc; using System.Linq.Expressions; using System.Reflection; namespace Infraestrutura { /// <summary> /// Classe de select do HTML /// </summary> public class DropDown { /// <summary> /// Construtor /// </summary> /// <param name="text">nome da propriedade a ser o texto</param> /// <param name="value">nome da propriedade a ser valor</param> /// <param name="entity">entidade (modelView)</param> /// <returns>lista de selectItens do ASP.NET MVC</returns>