ASP.NET MVC 3 - Que recursos você deseja ver? [fechado
-
22-09-2019 - |
Pergunta
Conheço um monte de pessoas que estão realmente gostando das melhorias que o ASP.NET MVC 2 fez durante o primeiro lançamento. Acabei de começar a migrar nosso projeto MVC 1 e, até agora, as áreas limparam totalmente a bagunça da subpasta que tivemos em nossa aplicação em larga escala. À medida que me aprofunda em todas as melhorias e mudanças que foram feitas, ainda continuo pensando comigo mesmo, seria bom se eles tivessem X nesse lançamento. Por exemplo, eu adoraria se eles tivessem algum tipo de injeção de dependência incorporada, em vez de ter que usar soluções de terceiros.
Minha verdadeira pergunta é agora que o ASP.NET MVC 2 está em estado selvagem, o que os recursos desejam/desejam que a equipe tenha implementado e espere que eles implementem para o ASP.NET MVC 3?
EDITAR
Parece que a injeção de dependência é incorporada para a primeira versão de visualização do ASP.NET MVC 3! Eu gosto dos recursos adicionados até agora. ASP.NET 3 Visualização Um está fora!
Solução
Eu acho que o MVC 3 não será muito dramático com suas melhorias, mas mais estável e gradual.
o Roteiro ASP.NET MVC 3 Tem um instantâneo do que a equipe aparentemente está olhando para a implementação no próximo lançamento e alguns dos pontos são muito interessantes.
Eu acho que meus favoritos dessa lista provavelmente seriam:
- Mais ajudantes do Ajax: isso alinhará a estrutura com o mundo da Webforms, que já tem todos esses ajudantes e, até certo ponto, atua como uma barreira para algumas pessoas que ocupam a plataforma.
- Mais coisas de injeção de dependência - para aqueles que desejam, isso é ótimo. :)
- O suporte aprimorado em cache é a grande vitória para mim. Ter isso construído na estrutura seria um grande benefício e poderia resultar em uma boa economia de desempenho.
- Validationattributes adicionais também não se sentiriam perdidos. Embora a instalação seja ótima para adicioná -los, uma boa biblioteca dos comuns, como email e propriedadesmustmatch e assim por diante.
Outras dicas
Eu gostaria da remoção completa de tudo cordas mágicas.
Eu realmente gostaria que eles adicionem o seguinte:
- Condicionais e loops de estilo Spark usando atributos de tag HTML.
- Atualizado: Propriedade do projeto visível para alternar a validação do tempo de compilação de visualizações.
- Algo para verificar/validar se minhas rotas estão corretas.
- Solução do provedor de associação que usa o INT em vez de Guid para identificação e permite mapear os campos de perfil para uma tabela personalizada em vez do padrão genérico, mas lento.
- Ajudantes baseados em lambda para evitar cordas mágicas (atualmente em MVCFutures)
- Modelo T4MVC para ajudar automaticamente os ajudantes digitados
- Wizards ou modelos de projeto para obter um modelo que já está configurado para o COI e preocupações semelhantes, de preferência com uma caixa de diálogo de seleção para escolher qual estrutura usar para o COI, testes de unidade etc.
- Atributos adicionais (filtros e validação).
Hmmm, é tudo o que consigo pensar agora :)
As ferramentas (modelos T4) para criar objetos MOQ para teste de unidade seriam muito legais. O teste de certos objetos na estrutura é desnecessariamente complicado, e ter a capacidade de codificar-se, parte disso seria muito benéfica.
Eu gostaria:
Ferramentas
- Uma visualização de listagem alternativa usando Ajax por exemplo, usando JQGrid (implementando a classificação, paginação, pesquisa)
- Aprimoramentos para páginas de crud Detectar as entidades relacionamentos para as classes da estrutura da entidade e usar outro conjunto de componentes baseados em campos tipo, por exemplo, como dados dinâmicos :)
Como o ASP.NET MVC 3 será apenas .NET 4, eu gostaria de ver algumas coisas em torno de controladores assíncronos e todos os outros novos funções de assíncrias/multithreading que .Net 4 traz.
Eu gostaria de ver suporte embutido para coisas como IronRuby
O apoio do MEF seria bom.
Eu gostaria de ver uma nova maneira de lidar com o roteamento, para facilitar o desenvolvimento de serviços de REST do desenvolvedor. Atualmente tenho rotas como esta:
context.MapRoute(null,
"api/posts",
new { controller = "Post", action = "Get" },
new { httpConstraint = new HttpMethodConstraint("GET") });
context.MapRoute(null,
"api/posts",
new { controller = "Post", action = "Insert" },
new { httpConstraint = new HttpMethodConstraint("POST") });
context.MapRoute(null,
"api/posts/{id}",
new { controller = "Post", action = "Update" },
new { httpConstraint = new HttpMethodConstraint("PUT") });
context.MapRoute(null,
"api/posts/{id}",
new { controller = "Post", action = "Delete" },
new { httpConstraint = new HttpMethodConstraint("DELETE") });
Para uma nova pessoa usando o ASP.NET MVC, é muito inintivo criar objetos anônimos para lidar com o roteamento. Eu gostaria de ver isso revisado para algo assim (e como estamos usando o C# 4.0):
context.MapRoute("api/posts",
controller: "Post",
action: "Get",
httpMethodConstraint: HttpMethodConstraint.GET
);
context.MapRoute("api/posts",
controller: "Post",
action: "Insert",
httpMethodConstraint: HttpMethodConstraint.POST
);
context.MapRoute("api/posts/{id}",
controller: "Post",
action: "Update",
httpMethodConstraint: HttpMethodConstraint.PUT
);
context.MapRoute("api/posts/{id}",
controller: "Post",
action: "Delete",
httpMethodConstraint: HttpMethodConstraint.DELETE
);
Isso o tornaria mais descoberto também.
Gostaria de ajudantes que andaim automaticamente as visualizações de índice. Talvez algo como IndexDisplay()
, IndexDisplayFor()
, e IndexDisplayForModel()
.
Gostaria de modelar aulas de amigos de gênero automático em qualquer modelo.
Também uso o recurso de simplicidade, como a maioria das coisas sem auxiliar, como o HTML-Helper I Thing That Development no ASP.NET MVC 3 é uma maneira melhor de aprender o MVC 3 no futuro.
As duas coisas que eu gostaria de ver a maioria são a injeção direta de dependência em vistas, filtros etc., e (eu sei que isso está supostamente a caminho com o mecanismo de visualização de barbear) é poder testar minhas opiniões isoladas do Pipeline ASP.NET (talvez incluindo a validação do DOCTYPE e/ou algum tipo de compilação/validação de JavaScript).
Aqui estão algumas outras idéias:
- Seria bom poder empacotar um componente da interface do usuário (visualizações, modelos, modelos de exibição etc.) para reutilizar em vários projetos. Acho que isso atualmente é possível de alguma forma, mas eu simplesmente não preciso muito do suficiente para descobrir isso sozinho.
- A ideia de ações sem controlador me intriga, particularmente do ponto de vista do SRP.
- Melhor suporte para o padrão pós-redirect-get (p/r/g) ... parece que deve haver suporte intrínseco para esse padrão muito importante.
Mais controles e ajudantes seriam muito legais, especialmente uma grade (Ajax).
ASP.NET MVC 3 A prévia 1 também foi anunciada em http://weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3-preview-1.aspx
Gostaria de ver o suporte à montagem das áreas (quero dizer, muitos conjuntos com áreas diferentes) + carregamento dinâmico, algo como plugins.
EDIT: E temos visualização 1 hoje: http://weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3-preview-1.aspx
Alguém feliz? :>