Вы бы порекомендовали использовать библиотеку MVC Futures? - PullRequest
1 голос
/ 26 июня 2009

Использование магических строк в C # действительно беспокоит меня, поэтому я думаю об использовании библиотеки MVC Futures.

Есть ли причины, по которым я бы не хотел этого делать, или какие-то ошибки, о которых мне следует знать?

Ответы [ 5 ]

4 голосов
/ 26 июня 2009

Прежде всего, просто потому, что это строка, она не превращается в «волшебную» строку. Во-вторых, я бы порекомендовал посмотреть на шаблоны T4MVC, о которых Дэвид Эббо пишет здесь: http://blogs.msdn.com/davidebb/archive/2009/06/17/a-new-and-improved-asp-net-mvc-t4-template.aspx.

Преимущество этого подхода в том, что при использовании генерации кода вы получаете строгую типизацию везде, и для этого не требуется компилировать выражения, которые могут снизить производительность.

3 голосов
/ 26 июня 2009

Риски использования функций из ASP.NET MVC Futures составляют

  • они считаются недостаточно отшлифованными для отправки в качестве части базовой структуры, поэтому могут привести к ошибкам;
  • команда Microsoft не может объединить их все в следующую версию основного пакета ASP.NET MVC или существенно изменить их поведение.
3 голосов
/ 26 июня 2009

Я пользуюсь им около 1 месяца и мне очень нравится. Например, мне нравятся новые строго типизированные Html-помощники, которые, безусловно, лучше, чем волшебные строки:

<%= Html.TextBoxFor(m => m.User.FirstName)%>

Согласно плану MVC, эта функция будет частью MVC 2, но даже если это не так, у меня все еще есть исходный код futures, так что я могу использовать эту вспомогательную реализацию в качестве последнего средства.

2 голосов
/ 26 июня 2009

Я думаю, что у него есть некоторые особенности, которые действительно должны быть в библиотеке MVC, но я бы держался подальше от строго типизированных ссылок действий. Это может очень дорого стоить процессору, добавляя СЕКУНДЫ (не MS) к времени рендеринга вашей страницы.

http://www.chadmoran.com/blog/2009/4/23/optimizing-url-generation-in-aspnet-mvc-part-2.html

Одной из функций, доступных в MVC-фьючерсах, которые я часто использую, является RenderAction, поскольку это единственный способ обойти частичное кэширование вывода.

1 голос
/ 26 июня 2009

Не совсем уверен насчет фьючерсов, но я очень рекомендую библиотеку Mvccontrib , которая зависит от некоторых битов в фьючерсах.

...