2017-01-25 18 views
0

Мне нужно приложение, которое читает некоторые таблицы и генерирует некоторые новые данные из прочитанных данных и сохраняет их в других таблицах. Это похоже: у меня есть база данных, которая дает мне информацию о некоторых клиентах, которые поступают из одного приложения. В соответствии с этой информацией я могу создать несколько предупреждений о клиентах, чтобы показать их в другом приложении.Как создать службу Windows с EntityFramework в C#

У меня есть служба, которая генерирует первые данные, она работает нормально, она не была разработана мной, и мне не нужно беспокоиться об этом. Но я создал службу Windows для чтения и создания новых данных, и она использует DataSets, такие как «temp» таблицы и для связи с базой данных, и в конце процесса все сразу сохраняется в базе данных, используя tableAdapter.update();

Я хотел бы улучшить эту службу Windows, потому что DataSets не кажется лучшим вариантом в моей точке зрения, и я изучил Entity Framework и ее преимущества, но я не уверен, что это лучший способ создать окна. Каковы наилучшие методы создания такого приложения? Каков наилучший способ не попасть в базу данных по каждой сгенерированной записи, но сохранить кучу записей и сохранить ее в памяти раньше? Я имею в виду, как бы иметь временные таблицы во время выполнения и в конце процесса, сохранить все сгенерированное.

ответ

0

Ваш вопрос слишком широк для SO, и он скорее всего будет закрыт. Я укажу несколько советов, которые помогут вам начать работу. Попробуйте их и вернуться с specific questions (написанным кодом, конкретными ошибками и т.д.)

  1. DataSet против EF - перед тем кодом refactorization, посмотрите here, чтобы увидеть плюсы и минусы каждого из способов. Для простого приложения (службы), он не может быть необходимо на всех

  2. Caching - избегая несколько операций чтения/записи в/из базы данных может быть достигнуто за счет кэширования. Один из способов - HttpRuntime.Cache, как описано here. Не беспокойтесь о Web в пространстве имен, его также можно использовать для использования в не-веб-приложениях, как описано here.

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

 Смежные вопросы

  • Нет связанных вопросов^_^