c# - 连接访问动态
问题描述
我的项目中有一个问题。我需要连接访问数据库(teste.accdb),但是这个连接我需要更改计算机名称和文件位置的辅音。
string caminhoficheiro = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
OleDbConnection conexao = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="+ caminhoficheiro+"teste.accdb");
OleDbCommand comando = new OleDbCommand();
但问题是“+ caminhoficheiro+”。错误是“字段初始值设定项无法引用非静态字段、方法或属性 'Form1.caminhoficheiro”
如果能帮忙谢谢。
解决方案
简而言之,错误意味着 - 您不能使用一个实例变量来初始化另一个实例变量。在您的示例中,您caminhoficheiro
用于初始化另一个实例变量conexao
试试这个...
OleDbConnection conexao = new OleDbConnection(string.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}teste.accdb", Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)));
OleDbCommand comando = new OleDbCommand();
这样,您就摆脱了其中一个领域。解决此问题的其他方法很少(例如基于构造函数的设置等),但这是对现有代码的最小更改的修复。
推荐阅读
- r - ggplot核密度图线重叠不正确
- firebase-realtime-database - 如何从 Firebase 数据库密钥中检索/解码时间戳?
- azure-devops - Azure Devops 中的秘密管道参数
- python - 来自 django auth_user 的用户名作为另一个表中的外键
- python - 如何在列先例中的特定列中查找和查找值并将其值放入 Pandas 的新列中
- android - 我试图将一个应用程序部署到使用 kivy 开发的 google playstore。如何从 API 27 升级到 API 30
- javascript - Vanilla JavaScript 切换功能将我的 h2 标签向上移动
- sql - SAS 错误:子查询评估为多于一行 - SQL 查询
- javascript - 根据用户输入多次迭代数组并添加新索引
- google-apps-script - 新的 Google Apps 脚本编辑器 - 其他绑定项目?