首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OleDbException Microsoft Access找不到MSysAccessStorage

OleDbException Microsoft Access找不到MSysAccessStorage
EN

Stack Overflow用户
提问于 2022-04-05 15:16:35
回答 1查看 82关注 0票数 0

我的项目在连接字符串Provider=Microsoft.ACE.OLEDB.12.0中对提供程序使用了Provider=Microsoft.ACE.OLEDB.12.0 v3.1。代码经历了几次迭代,包括RemoveRange和AddRange。目前是这样的

代码语言:javascript
复制
boards.ForEach((board) =>
{
    if (_cutriteDbContext.Boards.Any(i => i.BoardsCode == board.BoardsCode))
    {
        _cutriteDbContext.Boards.Update(board);
    }
    else
    {
        _cutriteDbContext.Boards.Add(board);
    }
});

我收到一个错误,它在到达MSysAccessStorage时找不到.Boards.Any()。这是因为数据库文件太旧了吗?有人遇到过这种情况吗?编辑:有办法在DbContextOptions中指定与EntityFrameworkCore.Jet.OleDb的兼容性吗?

Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware:错误:在执行请求时发生了一个未处理的异常。System.Data.OleDb.OleDbException (0x80040E37):Microsoft数据库引擎找不到输入表或查询'MSysAccessStorage‘。确保其存在,并确保其名称拼写正确。( System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)在System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams,Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) ( System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior,Object& executeResult) at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior,(字符串方法)在System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior行为)在System.Data.OleDb.OleDbCommand.ExecuteDbDataReader(CommandBehavior行为)在System.Data.Common.DbCommand.ExecuteReader(CommandBehavior行为)

(在EntityFrameworkCore.Jet.Data.JetCommand.ExecuteDbDataReaderCore(CommandBehavior行为)在System.Data.Common.DbCommand.ExecuteReader() at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)在Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable1.Enumerator.InitializeReader(DbContext _, Boolean result) at EntityFrameworkCore.Jet.Storage.Internal.JetExecutionStrategy.Execute[TState,TResult](TState state, Func3操作时,Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteTResult at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.ExecuteTResult at System.Linq.Queryable.AnyTSource at CutriteAPI.Repositories.CutriteRepository.b__3_1(Board board( C:\Users\mbaker\source\repos\CutriteAPI\CutriteAPI\Repositories\CutriteRepository.cs:line 43 at System.Collections.Generic.List1.ForEach(Action1 action)Repositories.CutriteRepository.SyncBoards(List1 boards) in C:\Users\mbaker\source\repos\CutriteAPI\CutriteAPI\Repositories\CutriteRepository.cs:line 41 at CutriteAPI.Controllers.CutriteAPIController.SyncBoards(CUT\_RITE\_FILE cUT\_RITE\_FILE) in C:\Users\mbaker\source\repos\CutriteAPI\CutriteAPI\Controllers\CutriteAPIController.cs:line 94 at CutriteAPI.Controllers.CutriteAPIController.SyncLibrary(CUT\_RITE\_FILE cUT\_RITE\_FILE) in C:\Users\mbaker\source\repos\CutriteAPI\CutriteAPI\Controllers\CutriteAPIController.cs:line 78 at lambda\_method(Closure , Object ) at Microsoft.Extensions.Internal.ObjectMethodExecutorAwaitable.Awaiter.GetResult() at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g\_\_Awaited|12\_0(ControllerActionInvoker invoker, ValueTask1 actionResultValueTask)在Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker扑克,Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed上下文中的任务lastTask、状态下一步、作用域、对象状态、布尔值( isCompleted),Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker调用器的作用域和作用域、对象和状态、布尔& isCompleted) ),任务下一步,状态下一步,作用域,对象状态,布尔isCompleted)在Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|19_0(ResourceInvoker调用器,任务lastTask,状态下一步,Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker调用者的作用域、对象状态、布尔值( isCompleted)、Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint端点的任务(任务、IDisposable作用域)、Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext上下文中的任务(任务requestTask、ILogger记录器))( Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext上下文))( Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext )( Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext),( Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext上下文中的ISwaggerProvider swaggerProvider) ()

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-06 05:04:18

您可以使用一个列和一个记录创建MSysAccessStorage。它用于某些查询,只是为了有一条记录(请参阅Oracle双表)。您还可以更改此表的名称(它是jet配置属性的ef提供程序)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71754328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档