#asp.net #hsqldb
#asp.net #hsqldb
Вопрос:
Я попытался подключиться к HSQLDB с помощью API из официального репозитория, но он выдал мне эту ошибку: System.Исключение TypeLoadException было необработанным HResult=-2146233054 Message=Метод ‘getParentLogger’ типа ‘org.hsqldb.jdbcDriver’ из сборки ‘Org.Hsqldb, версия = 1.8.1.3, Культура = нейтральная, PublicKeyToken = 05732303801b208f’ не имеет реализации. Source= TypeName=org.hsqldb.jdbcDriver Я использую пакеты управления NuGet Visual Studio 2013 для установки IKVM и IKVM.OpenJDK.JDBC. Я также добавляю Org.Hsqldb.dll к ссылке. Вот коды подключения:
открытый класс HSQLDB Connection: IConnection {
private Connection _connection;
public HSQLDBConnection(string dbName, string tableName)
{
try
{
DriverManager.registerDriver(new org.hsqldb.jdbcDriver());
_connection = DriverManager.getConnection("jdbc:hsqldb:" dbName, "SA", "");
CreateTable(tableName);
}
catch(Exception e)
{
Console.WriteLine(e.Message);
}
}
private int CreateTable(string tableName)
{
string command = "";
command = "CREATE TABLE ";
command = tableName " (";
command = "id VARCHAR(255),";
command = "data LONGVARCHAR,";
command = "expires_at INTEGER";
command = ")";
return _connection.createStatement().executeUpdate(command);
}
}
Синтаксис похож на java, потому что этот API поддерживает java-код для HSQLDB. Эти коды написаны на .net 4.5.
Комментарии:
1. Я думаю, вам нужно использовать версии программного обеспечения Java и Microsoft, которые использовались для разработки пакета HSQLDB .NET. Эти версии на несколько лет старше 2013 года.
2. Спасибо! Я попытался изменить версию IKVM, и это сработало.