public void Close() { if (State != ConnectionState.Closed) { var retVal = UnsafeNativeMethods.Close(NativeConnection); if (retVal != UnsafeNativeMethods.ResultCode.OK) { throw new SqliteException(GetError(NativeConnection) + " - " + retVal); } } State = ConnectionState.Closed; NativeConnection = IntPtr.Zero; }
public static void CreateFile(string databaseFileName) { var dirName = Path.GetDirectoryName(databaseFileName); if (string.IsNullOrEmpty(dirName) == false && Directory.Exists(dirName) == false) { Directory.CreateDirectory(dirName); } IntPtr conn; var retVal = UnsafeNativeMethods.Open(databaseFileName, out conn, UnsafeNativeMethods.OpenFlags.ReadWrite | UnsafeNativeMethods.OpenFlags.Create, null); if (retVal != UnsafeNativeMethods.ResultCode.OK) { throw new SqliteException(GetError(conn) + " - " + retVal); } UnsafeNativeMethods.Close(conn); }