Рабочий процесс Windows - Веб-служба - Каталог_данных приложений - База данных - PullRequest
2 голосов
/ 30 октября 2008

Решение
- WorkflowProject
- Рабочий процесс1
- Рабочий процесс2
- WebProject (WAP)
- App_Data
- MyDatabase.vdb3
- MyWebService.asmx
- Web.Config

Хорошо, так что ... это основная "схема" проекта. База данных хранится на веб-сайте и представляет собой базу данных VistaDB (это также может быть база данных MSAccess или SQLite). На веб-сайте я мог кодировать против базы данных. Я мог бы иметь | DataDirectory | в моей строке подключения.

Проект WORKFLOW отделен от Веб-сайта. MyWebService.asmx - это заглушка для вызова веб-службы на основе рабочего процесса.

Как открыть базу данных на сайте App_Data каталог? Прямо сейчас у меня есть жестко закодированное значение (то есть @ "E: \ datadirectory \ database.vdb3"), но это не является предпочтительным и будет работать только на моей машине разработки.

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

Решение? Лучшие практики ? Ссылки?

Ответы [ 2 ]

1 голос
/ 12 ноября 2008

Мне не удалось заставить VirtualPathUtility работать. Вот решение, которое я в итоге нашел, что сработало:

string s = AppDomain.CurrentDomain.GetData("DataDirectory") as string;

Получает абсолютный путь к каталогу App_Data.

1 голос
/ 30 октября 2008

Вы должны взглянуть на " VirtualPathUtility "

подставить результат:

VirtualPathUtility.ToAbsolute("~/App_Data/db.vdb3");

в строку подключения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...