2010-10-31 1 views
1

Я работаю Для своей компании в архитектуре .NET N-уровня и у вас есть несколько вопросов. Основы: проект должен быть разделен на слои и не должен позволять разрабатывать как можно более легкие дополнительные модули для таких модулей, как ведение журнала, рейтинги, управление пользователями и т. Д.WCF для веб-сайтов?

Окружающая среда: VS2010, EF4, SQL Server 2008, LinqToSql, C#

Текущая ситуация следующая: У меня есть уровень доступа к данным ГДЕ Я использую Entity Framework Вт доступ к базе данных ENTITIES. , тогда у меня есть Bussines Layer со всей логикой. Вставка, обновление, удаление и дополнительные методы для поиска и т. Д. Следующий уровень для контрактов на обслуживание WCF Наконец, есть уровень представления (рабочий стол и сеть).

Сначала я создал настольное приложение. После добавления ссылочного уровня сервиса и уровня представления с левой стороны на вкладке «Ресурсы» все показаны все таблицы из базы данных. Отлично.

Затем я использовал datagridview и связал свой DataSource с WCF с связующим источником и, наконец, мастером для заказа столбцов и т. Д. Это сработало нормально.

Следующая попытка состояла в том, чтобы создать веб-сайт с самой функциональностью. Несмотря на то, что я добавил ссылку на службу WCF, источники данных не отображаются, поэтому невозможно использовать мастер для быстрых изменений, и все данные должны быть закодированы! Эта работа сложна и требует большого количества кода для выполнения основных операций, таких как вставка, обновление, удаление. Но если я добавлю ссылку на уровень доступа к данным и добавлю в строку web.config строку подключения, тогда я могу использовать мастер. Но тогда доступ к источнику данных (DAL) не выполняется через WCF.

Я узнал, что на веб-сайте Asp.net Dynamic Data есть основа для вставки, обновления и удаления. Вероятно, это лучше, или я ошибаюсь?

  • Вопрос 1: Должен ли DAL для .edmx использовать автоматически сгенерированный код (генерировать код, добавляя элементы)?

  • Вопрос 2: Как получить те же источники данных (на вкладке), что и в настольном приложении?

  • Вопрос 3: Можно ли использовать WCF совместно с Telericks DataGrid, поскольку он уже поддерживает Ajax по умолчанию, вставляет, обновляет и удаляет операции?

  • Вопрос 4: Как спроектировать архитектуру, которая будет поддерживать модульность?

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

Я действительно надеюсь получить ответы/помощь от вас.

Любая помощь приветствуется и благодарит заранее.

Приветствия

+0

Вы должны разделить это на четыре вопроса. Это даст вам больше шансов получить ответ. Кроме того, возможно, MVC-структура Microsoft подходит вам лучше как веб-инфраструктура. –

ответ

0
  1. Да, пока он получает свою работу, в противном случае продлить.
  2. Это кажется чисто связанным с дизайном вопросом; но если вы используете telerik, я надеюсь, что вы найдете то же самое как для сети, так и для рабочего стола.
  3. Да. Но вам нужно будет настроить объекты, возвращенные из веб-службы, для установки в источник данных telatik datagrid.
  4. Вы уже разорвали его на бизнес, данные и уровень ui; поэтому его несколько уже модульный. ASP.NET MVC может быть вашим лучшим выбором. Вы также можете рассмотреть возможность использования ASP.NET Modules, чтобы сохранить разницу в регистрации, аутентификации.