Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос про проектирование / 7 сообщений из 7, страница 1 из 1
16.08.2006, 15:17
    #33922070
MitjaT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Здравствуйте!

Есть пока еще не сложная система. Вот схема(5кБ):
http://rsdn.ru/File/38789/Schema.gif

В схеме:
DB — база под управлением MS SQL 2005.
Data Access Layer — схема базы данных.
Business Logic Layer — набор классов, выбирающих нужные данные, как-то их преобразующие, и записывающих обратно в базу. Есть также классы, реализующие какие-то математические рассчеты.
Presentation Layer — aspx-страницы.

Все отлично!
Но теперь появилась необходимость дополнить систему Windows — приложением, которое будет делать все то, что можно выполнить и сейчас, но с более дружественным интерфейсом.
Но как? Напрямую коннектиться к базе на сервере, дублируя всю логику в Windowws-приложении?
Но с точки зрения безопасности — это плохо!
Как лучше реализовать?

Заранее благодарен!
...
Рейтинг: 0 / 0
16.08.2006, 15:23
    #33922113
kpumuk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Здравствуйте, MitjaT, Вы писали:

MT>Все отлично!
MT>Но теперь появилась необходимость дополнить систему Windows — приложением, которое будет делать все то, что можно выполнить и сейчас, но с более дружественным интерфейсом.
MT>Но как? Напрямую коннектиться к базе на сервере, дублируя всю логику в Windowws-приложении?
MT>Но с точки зрения безопасности — это плохо!
MT>Как лучше реализовать?

У тебя же в схеме все есть :-) Выдели BLL и DAL в отдельную (или отдельные) сбоку и юзай ее из WinForms- и WebForms-приложений.... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
...
Рейтинг: 0 / 0
16.08.2006, 15:30
    #33922154
MitjaT
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Здравствуйте, kpumuk, Вы писали:

K>У тебя же в схеме все есть :-)
Все — да не все! Знаний и опыта в этой области нет!

K>Выдели BLL и DAL в отдельную (или отдельные) сбоку и юзай ее из WinForms- и WebForms-приложений.
Это как?
Я знаю, для Windows Application можно только Add Web Reference на удаленный Web Service. (извините, что англо-русски написал)
Как выделить?
...
Рейтинг: 0 / 0
16.08.2006, 16:07
    #33922339
masman
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
>Как выделить?
Создать например в VS проект ClassLibrary и вынести туда всю логику. После компиляции сборки получишь DLL , на которую можно будет добавить Reference и затем использовать ее классы и меторы.
...
Рейтинг: 0 / 0
16.08.2006, 16:13
    #33922382
masman
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Да кстати, в твоем случае (MSSQL 2005) можно перенести все кроме логики представления на сторону БД. В таком случае можешь клепать морды хоть на asp, хоть на winForms, хоть на PHP и др.
У этого подхода есть свои минусы и плюсы, но это уже другая история.
...
Рейтинг: 0 / 0
16.08.2006, 17:21
    #33922753
stasukas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Здравствуйте, MitjaT, Вы писали:

MT>В схеме:
MT>DB — база под управлением MS SQL 2005.
MT>Data Access Layer — схема базы данных.
MT>Business Logic Layer — набор классов, выбирающих нужные данные, как-то их преобразующие, и записывающих обратно в базу. Есть также классы, реализующие какие-то математические рассчеты.
MT>Presentation Layer — aspx-страницы.

MT>Но теперь появилась необходимость дополнить систему Windows — приложением, которое будет делать все то, что можно выполнить и сейчас, но с более дружественным интерфейсом.

Необходимо сделать обертку вокруг Business Logic Layer в виде WebService (это проще всего и достаточно гибко, берем за основной вариант) или в виде COM+/Enterprise Services (часто не самый оптимальный вариант? далее не рассматриваю). Общение Presentation Layer с Business Logic Layer, соответственно, сделать через WebService.

Presentation Layer разбить на блоки в соответствии с патерном MVP. Выделить общую часть в отдельную сборку, которую использовать одновременно для ASP.NET и WinForms.

На всякий случай хорошая ссылка по теме MVP
http://haacked.com/archive/2006/08/09/ASP.NETSupervisingControllerModelViewPresenterFromSchematicToUnitTestsToCode.aspx
http://haacked.com/archive/2006/08/09/TyingMVPToTheASP.NETEventModel.aspx... << RSDN@Home 1.2.0 alpha rev. 653>>
C:\>DUMP StateOf(My.Brain) >> http://www.usecase.ru/
...
Рейтинг: 0 / 0
16.08.2006, 17:50
    #33922860
IB
IB
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос про проектирование
Здравствуйте, MitjaT, Вы писали:


MT>Но теперь появилась необходимость дополнить систему Windows — приложением, которое будет делать все то, что можно выполнить и сейчас, но с более дружественным интерфейсом.
MT>Но как?
Есть несколько вариантов, почитать можно здесь: Re[3]: CAB, SmartClientAB with UIP2
Здесь небольшой пример, как это можно сделать с помощю MVP: Код к статье, как раз два проекта web и win использующие общий функционал.... << RSDN@Home 1.2.0 alpha rev. 0>>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос про проектирование / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]