Использование SQLite в Phalanger

В настоящее время я пытаюсь скомпилировать работающий проект PHP в .Net DLL. В моем решении Phalanger / PHP используются PDO и SQLite. Когда я доберусь до части, которая создает мой объект PDO:

$this->db = new \PDO('sqlite:'.$fileName, null, null, [PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);

Я получаю простое исключение «Драйвер не найден».

Я не могу найти много полезной информации, поэтому надеюсь, что у кого-то есть опыт.

В моих ссылках на проект я имею:

  • PhpNetPDO
  • PhpNetPDOSQLite
  • PhpNetSQLite

У меня также есть App.config с:

<?xml version="1.0" encoding="utf-8"?>
<configuration>

<configSections>
<section name="phpNet" type="PHP.Core.ConfigurationSectionHandler, PhpNetCore, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0a8e8c4c76728c71" />
</configSections>

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="Phalanger"/>
</assemblyBinding>
</runtime>

<phpNet>
<classLibrary>
<add assembly="PhpNetSQLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2771987119c16a03" section="sqlite"/>
<add assembly="PhpNetPDO, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2771987119c16a03" section="pdo"/>
<add assembly="PhpNetPDOSQLite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2771987119c16a03" section="pdosqlite"/>
</classLibrary>
</phpNet>
</configuration>

Хотя App.config кажется совершенно неактуальным.

В веб-приложении (насколько я могу судить) мне нужен PHP.ini, в котором определен мой sqlite dsn. Есть ли эквивалентный файл для Phalanger, особенно когда вы создаете dll? Как мне указать мой проект на драйвер SQLite?

Я также попытался создать систему odbc dsn под названием sqlite, но безуспешно.

Может кто-нибудь дать мне совет или указать хороший урок?

0

Решение

Ух ты, ошибка новичка! У меня была информация о конфигурации Phalanger в App.config в исходном проекте, который компилировался в dll, но не в App.config в проекте, который вызывал dll. Глупо, глупо, глупо!

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]