当前位置: 首页 > news >正文

c# ADODB.Recordset实例调用Fields报错

代码:

using System;
using System.CodeDom;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ADODB;namespace ConsoleApp1
{internal class Programre{static ADODB.Recordset recordsetInstance=new ADODB.Recordset();static Connection connectionInstance=new Connection();  static void Main(string[] args){string databaseFilePath = "D:\\database.mdb";string tableName = "table";string columnName = "columnName";dynamic columnValue;connectionInstance.ConnectionString = $"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={databaseFilePath}";connectionInstance.Open();recordsetInstance.Open($"SELECT * FROM {tableName}", connectionInstance, CursorTypeEnum.adOpenForwardOnly, LockTypeEnum.adLockReadOnly);columnValue = recordsetInstance.Fields[columnName].Value;Console.WriteLine(columnValue.ToString());connectionInstance.Close();Console.ReadLine();}}
}

报错信息:

System.TypeLoadException
  HResult=0x80131522
  Message=未能从程序集“ConsoleApp1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”中加载类型“ADODB.FieldsToInternalFieldsMarshaler”。
  Source=mscorlib
  StackTrace:
   at System.StubHelpers.StubHelpers.CreateCustomMarshalerHelper(IntPtr pMD, Int32 paramToken, IntPtr hndManagedType)
   at ADODB._Recordset.get_Fields()
   at ConsoleApp1.Program.Main(String[] args) in C:\Users\hahah\Desktop\test\ConsoleApp1\Program.cs:line 20

解决方式:

代码不变,更换“Microsoft ActiveX Data Objects Libray“COM组件版本为6.0解决。(原本VS给我自动引用的是2.x;更换方式为进入项目的引用窗体,选择COM节点,勾选对应COM组件即可。)

http://www.lryc.cn/news/286864.html

相关文章:

  • windows和linux下SHA1,MD5,SHA256校验办法
  • 高新技术企业申报需要具备哪些条件?
  • 测试不拘一格——掌握Pytest插件pytest-random-order
  • DophineScheduler通俗版
  • 企业如何稳步开启SASE实施之路
  • 【Oracle】收集Oracle数据库内存相关的信息
  • MySQL也开始支持JavaScript了
  • 百度大脑 使用
  • Spring Boot 中的外部化配置
  • 10个常考的前端手写题,你全都会吗?(下)
  • Java 面试题库
  • 仿真机器人-深度学习CV和激光雷达感知(项目2)day6【数学基础-坐标变换】
  • Android下载gradle失败解决方法
  • C#,最小生成树(MST)克鲁斯卡尔(Kruskal)算法的源代码
  • Oracle篇—参数文件在11gRAC或12cRAC的启动位置介绍
  • scrapy pipelines
  • element-ui 打包流程源码解析——babel 相关
  • 听神经瘤的听力学表现
  • C#用DateTime.Now静态属性返回日期的星期信息
  • ARMv8-AArch64 的异常处理模型详解之异常类型 Exception types
  • Linux操作系统概念
  • Speech | 人工智能中关于语音务必需要了解的基础知识(信号处理)及代码
  • c# 单例模式实现
  • 万字长文详解Java线程池面试题
  • 【jQuery入门】链式编程、修改css、类操作和className的区别
  • 使用的uview 微信高版本 头像昵称填写能力
  • Hadoop3完全分布式搭建
  • 中断——外部中断EXIT
  • Kafka-服务端-副本机制
  • 银行数据仓库体系实践(4)--数据抽取和加载