ASP.NET MVC для разработчиков Ruby on Rails?

Долговременный наблюдатель, в первый раз плакат. Я - хакер-самоучка, который изучил Ruby on Rails для запуска. На работе мне разрешили работать над веб-приложением - единственная выгода, я должен использовать ASP.NET. Этот технологический выбор получает мандат, так же, как я предпочел бы использовать направляющие.

Существуют десятки "Направляющих для.NET/PHP/Java Разработчиков" книги и сообщения в блоге, но я не нашел движение противоположным направлением от направляющих до.NET.

Кто-то мог дать мне обзор того, как типичное приложение для направляющих перевело бы в ASP.NET MVC? Я исследую детали IDE, C#/VBscript, и т.д. Но что является возможными эквивалентами:

  • Генераторы
  • Драгоценные камни/Плагины
  • Базы данных
  • Миграции
  • Маршруты
  • Модели (ORMs)
  • Контроллеры (InheritedResources)
  • Представления (разметки, шаблоны, partials)
  • Консоль направляющих
  • Тестовые Единицы/Спецификации
  • и т.д. что-либо еще я забываю

Я принимаю много тонкостей направляющих, которые я считаю само собой разумеющимся как основанные на маршруте вспомогательные методы, и простые макро-объявления ассоциации не будут возможны.: (

Огромное спасибо!

10
задан ASP.NET MVC for Rails devs 17 February 2010 в 19:09
поделиться

3 ответа

Вам следует загрузить Visual Studio 2008 Express и загрузить ASP.NET MVC 1.0 (я бы не стал загружать ASP.NET MVC 2.0, потому что он только в RC. Подождите, пока он попадает в финал 2.0).

Вы также можете ознакомиться с пошаговым руководством Nerddinner . Это очень полезно при изучении ASP.NET MVC.

  • Генераторы

Вы имеете в виду генераторы кода? Фу.

  • Gems / Plugins

Если вам нужна функциональность, вы можете либо создать ее, либо посмотреть, существует ли для нее подключаемый модуль JQuery.

  • Базы данных

Доступ к базе данных осуществляется через вашу модель.

  • Миграции

?

  • Маршруты

Маршрутизация обрабатывается структурой, и вы можете добавлять маршруты в файл Global.asax.cs .

  • Модели (ORM)

Модели действительно по-прежнему называются «моделями», и в ASP.NET MVC, если вы используете LINQ-To-SQL, модель создается для вас, когда вы перетаскиваете таблицы базы данных внутрь. может использовать шаблон репозитория для доступа к модели базы данных.

  • Контроллеры (InheritedResources)

Контроллеры по-прежнему называются контроллерами.

  • Представления (макеты, шаблоны, партиалы)

Существуют разные типы механизмов просмотра, но тот, который предоставляется с ASP.NET MVC, поначалу подойдет.

  • Rails Console

Полагаю, вы имеете в виду IDE / Debugger? Вы можете создавать и отлаживать приложение ASP.NET MVC внутри Visual Studio.

  • Тестовые единицы / спецификации

Вы можете использовать NUnit или MSUnit. MSUnit уже интегрирован с Visual Studio, но NUnit может быть.

0
ответ дан 3 December 2019 в 22:36
поделиться

Я думаю, что в мире .Net вы обнаружите, что вам предстоит сделать большой выбор. Rails хорош тем, что предоставляет все эти вещи в одном месте, но при разработке для .Net вам придется создавать собственное решение.

  • Генераторы - Существуют различные средства генерации кода, но каждое из них предназначено для разных частей. Например, вы можете получить MyGeneration, который будет генерировать код на основе базы данных.
  • Гемы/плагины - для этого нет единой системы; компоненты можно найти в Интернете и скачать либо исходный код, либо .dll, а затем добавить ссылку в свой проект на сборку (.dll).
  • Базы данных - вы можете подключаться практически ко всему; вероятно, вы найдете больше всего рекомендаций для MS SQL Server.
  • Миграции - я не знаю прямого метода для этого в мире .net; я обычно пишу код SQL на SQL и запускаю скрипты на сервере вручную как часть развертывания.
  • Маршруты - ASP.Net MVC включает маршруты, посмотрите, например, в файле global.asax.cs, который создается при создании проекта.
  • Модели (ORMs) - ORMs для .Net повсюду. В состав .Net входят такие вещи, как Linq-to-sql и Entity Framework. За пределами MS вы можете найти много других, но я бы рекомендовал NHibernate.
  • Контроллеры - встроены в .Net MVC; вы сами пишете код.
  • Представления - встроены в .Net MVC; и снова вам предстоит написать их. MasterPages позволяет вам получить одинаковый общий макет на всех ваших страницах (включая общий header/footer и т.д.), Web Controls (файлы.ascx) позволяют вам сделать частичное представление.
  • Rails Console - я не знаю точно, что это дает (я .net разработчик, заинтересованный в изучении Rails, но пока не потратил много времени); Visual Studio позволяет отлаживать приложения, просматривать код и т.д. Я не думаю, что существуют какие-либо консоли для тестирования кода за пределами простого написания кода, компиляции и запуска.
  • Тестовые блоки/спецификации - Существует несколько тестовых фреймворков для .Net (у MS есть включенный фреймворк, NUnit - одна из альтернатив). Для спецификаций и т.п., возможно, стоит погуглить по Behavior Driven Design и посмотреть, что существует.
8
ответ дан 3 December 2019 в 22:36
поделиться

Есть несколько портов .NET для миграции RoR. Я использовал migratordotnet и FluentMigrator . Оба работают, как ожидалось, но я предпочитаю FluentMigrator. Он более полнофункциональный (например, может создавать индексы), и мне нравится свободный стиль.

5
ответ дан 3 December 2019 в 22:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: