Преобразование приложения ASP.NET в приложение Silverlight - PullRequest
2 голосов
/ 15 февраля 2010

Я занимаюсь разработкой трехслойного приложения ASP.NET с C # и Visual Studio 2008 SP1. Я использую WebForms.

Мне интересно преобразовать это приложение в приложение Silverlight. Возможно, я смогу повторно использовать много кода на уровне ASP.NET.

О чем ты думаешь?

Ответы [ 3 ]

3 голосов
/ 15 февраля 2010

Если у вас есть типичные уровни представления, бизнес-логики и данных, а также при условии, что вы старательно разделили свой код на эти уровни, вы сможете заменить свои веб-формы интерфейсом Silverlight и оставить свои BL и DAL. неповрежденный.

Реальные проекты, как правило, несколько беспорядочные, что затрудняет такой переход. Если вы используете SqlDataSource, у вас могут быть проблемы.

2 голосов
/ 15 февраля 2010

Вот некоторые хорошие моменты @ Энди, и вкратце остановимся на том, что он сказал:

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

Одна модель, которая действительно помогла достичь этого, была модель фасада. Я построил слой WCF, который расположен поверх бизнес-уровня, и с помощью шаблона фасада я могу вернуть результаты, которые больше подходят для нового интерфейса silverlight, без вмешательства в бизнес-уровень.

Скорее всего, ваш новый пользовательский интерфейс будет иметь совершенно иную архитектуру, чем версия ASP.NET. Вы сможете добиться более четкого разделения между пользовательским интерфейсом, кодом и данными. Часть кода ASP.NET, которым я очень гордился, выглядит позитивно сложным рядом с аналогичным кодом Silverlight. Будьте готовы расколоть свой старый код и исключить эти бизнес-правила из кода, стоящего сразу за:)

1 голос
/ 15 февраля 2010

Если ваша цель - просто воспроизвести поведение пользовательского интерфейса, предоставляемое ASP.NET, тогда да, при условии хорошего разбиения, вы можете повторно использовать довольно много кода. Вы бы спросили, почему вы хотите это сделать.

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

...