我正在尝试将ESENT windows数据库与managedesent库一起使用,但我总是收到错误
Error FileAccessDenied (JET_errFileAccessDenied, Cannot access file, the file is locked or in use)
打开数据库的代码是
m_Dictionary = new PersistentDictionary<string, PropertyStruct>("BaseEstateCachedPropertySummary2");
我在Windows 7上测试它,该应用程序是一个ASP.NET应用程序。有没有人对此有任何想法,文档相当渺茫。
答案 0 :(得分:1)
您是否尝试打开其他服务(例如Windows Update数据库)使用的现有数据库? Esent数据库只是单进程,因此您必须停止使用同一数据库的任何其他进程。
答案 1 :(得分:1)
我找到了答案。显然我没有写入数据库的默认目录的写权限,所以我必须指定完整的路径,如。
m_Dictionary = new PersistentDictionary<string, PropertyStruct>(@"c:\Data\BaseEstateCachedPropertySummary2");