Вслед за KISS principle, я вдруг понял следующее:ПОЦЕЛУЙ: Простой # приложение C, который взаимодействует с RESTful веб-службы
- В .NET, вы можете использовать Entity Framework модели, чтобы обернуть вокруг базы данных.
- Эта модель может быть представлена как веб-сервис через WCF.
- Этот веб-сервис будет иметь очень стандартизованное определение.
- Может быть создано клиентское приложение, которое может использовать любой такой веб-сервис RESTful.
Я не хочу, чтобы заново изобретать колесо, и это меня не удивило бы, если кто-то уже сделал это, так что мой вопрос прост: Кто-нибудь уже создал простой (рабочий стол, а не веб) клиентское приложение, которое может использовать службу RESTful, основанную на платформе Entity Framework, и которая позволит пользователю читать и записывать данные непосредственно на эту услугу?
В противном случае я просто должен «изобрести» это сам. :-)
Проблема в том, что уровень базы данных и служба RESTful уже завершены. Служба RESTful будет оставаться в проекте только на этапе разработки, так как мы можем использовать сборку уровня базы данных непосредственно из веб-приложений, которые строятся вокруг нее. Когда веб-приложение развернуто, службы RESTful просто остаются вне развертывания.
Но в базе данных много данных для управления более чем 50 таблицами. При разработке против локальной базы данных мы можем иметь прямой доступ к базе данных, поэтому для этого мне не нужен этот инструмент. Когда он будет развернут, веб-приложение будет единственным способом доступа к данным, поэтому я не смогу использовать этот инструмент. Но у нас также есть этап тестирования, когда база данных хранится в другой системе за пределами локального домена, и эта база данных недоступна для разработчиков. Только администраторы имеют прямой доступ к этой базе данных, что делает тесты более сложными.
Однако через службу RESTful я могу получить доступ к данным напрямую. Таким образом, когда какой-то тест идет не так, я могу восстановить данные через это соединение или просто создать копию данных для тестов в моей локальной системе. Существует множество других функций, и даже можно просто открыть URL-адрес службы таблицы прямо в Excel или XMLSpy, чтобы просмотреть содержимое. Но когда я хочу что-то написать, я должен написать специальный код, чтобы сделать именно это. Общий инструмент, который позволит мне получить доступ к данным и изменить их, будет проще. Поскольку это общая настройка вокруг служб данных ADO.NET, это тоже должно быть разумным.
Таким образом, я могу это сделать, но надеялся, что кто-то еще сделал что-то подобное. Но, похоже, такого инструмента еще нет ...
Клиент не должен знать ничего о структуре базы данных. Службы данных возвращают поток атома, который перечисляет все таблицы, которые могут отображаться в поле со списком. Выберите таблицу, и она вернет данные из этой таблицы, которые могут быть отображены сеткой, просто путем обдумывания элементов из пространства имен «d». Дополнительная функциональность не должна быть такой сложной, поскольку служба данных уже обобщила большую часть ее. Опасные? Да. Но как внутренний инструмент все еще практичен. (Проблемы безопасности должны решаться в службе, а не в приложении.) –
Насколько ваш образец действителен и может применяться, он вряд ли имеет смысл в бизнес-среде. Реальность - вы никогда не будете показывать все поля таблицы конечному пользователю. Кроме того, это было бы очень общим. Поэтому я поддерживаю свой ответ. В вашей ** среде ** это может быть практичным, но, кроме проекта создания CodePlex, я не видел такого клиента. – BinaryMisfit
В бизнес-среде, нет. Но в среде разработки, где вы хотите быстро взглянуть на данные, такой инструмент очень практичен. –