Проблемы с коннектом с Access (ASP NET NET 2003)
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Проблемы с коннектом с Access (ASP NET NET... Expand / Collapse
Автор
Сообщение
05.04.2007 10:06
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 06.12.2007 15:50
Сообщ.: 63, Visits: 589

Работаю с приложениями ASP NET Application (под VB NET)

Хочу создать простейшее приложение для отображения  таблицы БД Access

1)создаю приложение (OleDbConnection, OleDbDataAdapter, Dataset, DataGrid 

(Net для размещения  даёт только каталог \wwwroot\)

 

Появление ошибки

Файл 'D:\Acss\Фирма.mdb' не может быть открыт ядром базы данных Microsoft Jet. Файл уже открыт другим пользователем для монопольного доступа или требуется разрешение на просмотр данных.

Пытаюсь решать удалением статического коннекта из пула и открытием  динамического коннекта в программном коде при загрузке WEB-формы:

cn.ConnectionString = "Data  Source= c:\MyWebApp\Фирма.mdb;Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"

cn.Open()

aKlient.Fill(DsKlient1)


вообще происходит что-то странное
при переносе Фирма.mdb в другой каталог, например 'C:\MyWEBApp всё работает
права пользователя ASPNET - максимвльные- внесён в группу Администраторы и VS Developers


пытался уствнавливать описанные вышк 2 каталога как виртуальные под IIS но это не влияет.

Права каталогов на компьютере с виду одинаковые - на вкладке WEB-доступ обоих стоит -WEV-узел по умолчанию  доступ для обоих помечен - только на чтение, но ведь WinXP всегда так помечает любые папки


Пытался менять строку коннекта от лаконичного
cn.ConnectionString = "Data Source=d:\ACSS\
Фирма
.mdb;Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;"
до полного (что автоматом даёт
NET :
cn.ConnectionString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Data Source=D:\ACSS\
Фирма
.mdb;Mode=Share Deny None;Jet OLEDB:Engine Type=5;Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1"

Не помогает. В чём же дело?

 

2) почему среда Studio NET 2003  упорно предлагает сохранить проект ASP NET Application (впрочем так же и проект WEB Service в каталог wwwroot?

Ведь  при администрировании с IIS можно создать любой виртуальный каталог, наделив максимальными правами.

Я пытался переместить ранее созданный проект в такой каталог MyWebApp , но несмотря на наличие максимальных прав на него,  среда Studio NET при щелчке по файлу  *.vbproj говорит

Current user account is not a member of vs developers group.

Добавил  в свою учётную запись – членство в VS Developers Group

Теперь говорит – (после перемещения проекта из wwwroot в MyWebApp) – что проект на wwroot не существует и отказывается загружать его!!

Сообщ. #912259
05.04.2007 23:17


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 29.10.2007 19:07
Сообщ.: 292, Visits: 3 426
1. Как ты говоришь, при переносе базы Фирма.mdb в другой каталог и начинает снова работать ......причина  в следуещем  -   у тебя в коде твоего веб-проекта не закрывается БД  Фирма.mdb - это легко проверить наличием файла блокировки - Фирма.ldb в папке где лежит сама база  Фирма.mdb  (поэтому он и ругается что база занята другим пользователем)

Лечить -   в  коде приложения при выходе из веб приложения  закрывать БД  с проверкой остался ли файл блокировки - Фирма.ldb (если остался то удалить).

2. Не помню (я cам использую  VS 2005),  где то в настройках VS 2003 можно установить - отменить сохранение проекта.

Что касается переноса проекта в каталог MyWebApp  нужно в файле  *.vbproj   изменить или прописать новый путь для этого проекта в перенесенный каталог, так как там записан путь ранее созданного старого проекта для другого каталога. 

А вааще то мой совет, переводите проект на VS 2005 там нет этого геморроя с файлом *.vbproj  и  перемешением проекта в  любые виртуальные папки. 

 

Сообщ. #912285
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 3:11