|

New!
Version 4.0 supporting Visual Studio 2010 and Pervasive PSQL v11 just released !
Now including LINQ and 64-bit application support.
Product Overview
Btrieve Classes for .NET is a set of .NET database access support classes that enable fast, easy to program access from .NET programs to Pervasive PSQL databases via the Btrieve API.
They include a Native Class that allows direct Btrieve API access and a DDF Class that automatically reads Pervasive DDF files dynamically during run time, removing the need for table, field and other metadata definitions to be done statically within your program, and allowing database metadata changes after program build.
As such they greatly help developers looking to write new .NET programs accessing data in Pervasive PSQL databases or those looking to migrate existing pre- .NET Btrieve/Pervasive applications to .NET.
Good news for Btrieve/Pervasive .NET developers
If you are migrating existing Btrieve/Pervasive applications
to .NET without Btrieve Classes for .NET, these are some of the problems
you might have ...
- The performance of ADO.NET and Pervasive's OLE DB
provider is poor.
- Migrating your structure definitions to .NET is a
complex and often tiring task.
- Moving your existing Btrieve API based business logic
to an SQL DB is very difficult, but without a way to access the Btrieve
API easily from within .NET, this is the only choice you have.
- Your data structures require detailed locking control,
but if you convert to using SQL DB transactions, you may not be able
to obtain the performance you need.
- You want to easily write code to the Btrieve API
from within a ASP.NET Web application, but cannot.
- You want to easily call the Btrieve API even from
within new .NET language such as C# and J#, but cannot workout how.
- Your application relies on the performance of Btrieve
extended operations, you have already tried out moving to an SQL DB,
but found that you no longer get the performance you need.
The solution to all these problems is Btrieve Classes
for .NET!
Performance Comparison Test Results
With a simple C# test application that displays all the First_Name column
values of the Person table in Pervasive.SQL V8.6's DEMODATA in a list
box, the following test results were seen. Notice our product's outstanding
performance compared with ADO.NET and Pervasive's OLEDB driver.(about
3-20 times faster)
| Access Method |
1st |
2nd |
code |
| ADO.NET + Pervasive OLE DB provider |
12s |
10s |
code1 |
| Btrieve classes record object |
4s |
2s |
code2 |
| Btrieve classes extended object |
4s |
380ms |
code3 |
Note: 2nd trial is faster because of Pervasive's
cache functionality.
Why we can get better performance?
The main cause for this is believed to be the sheer size of the ADO.NET
and Pervasive OLE DB provider layers. We also conjecture that the overhead
associated with RPC based marshalling in a COM software module is also
considerable. Our .NET class library calls the Btrieve API directly
from C++ unmanaged code, so our software layer is very thin. Our data
transfer code between managed and unmanaged data has been optimized
to minimize data transfer volume. We also selected the C++ language
to produce Btrieve Classes for .NET because it was possible to perform
more finely tuned data marshalling compared to the generic data marshalling
code available in C# and elsewhere.
Also, ADO.NET and the OLE DB provider have many features and much functionality
to support a large variety of multi-vendor databases. In contrast, the
fact that our class libraries, by specializing on Pervasive/Btrieve,
avoid this kind of generic code is another reason behind our product's
better performance.
New Functionality in Version 4.0
- Support for Pervasive PSQL v11.
- Support for Microsoft Visual Studio 2010.
New Functionality in Version 3.0
- LINQ support.
Methods have been added to allow access to Pervasive PSQL data via .NET Framework 3.5's LINQ.
Sample code of this can be seen here.
- Support for Pervasive PSQL Summit v10.
- Support for Microsoft Visual Studio 2008.
- 64-bit OS and application support.
Structure Builder
| The .NET language makes it possible
to specify the memory alignment of structures by using the System.Runtime.Interop
classes, something that was not possible in VB6 days. However the
definition of this alignment is very complicated. The workload involved
in coding the necessary complex structures can become very large
especially as the number of columns and tables increases. Also mistakes
involving the definition of the true null indicator byte can consume
large amounts of a developer's time. To make the job of defining
such structures very much easier, we have decided to bundle a Structure
Builder Tool in version 1.10 of our product. This is a brand new
add-in tool for Microsoft Visual Studio for .NET that automatically
generates the stucture definition code you need directly into your
source code by referring to the table definitions in your DDF files.
The target languages supported for this structure code building
are Visual C# and Visual Basic.NET in this version. |
|
Two types of class library
This product includes two types of class library.
Please select according to the needs of your application.
- DDF Classes
A new group of classes specifically designed for the .NET Framework.
It is composed of classes such as Record/Extended/Transaction/Exception.
These enable smart and efficient access to column data and definition
of data type conversion code. This class provides excellent development
efficiency when working on new code.
- Native Class
This is a class that provides Btrieve API level access from .NET managed
code, something that is as yet unavailable in the Pervasive PSQL SDK.
This class is ideally suited for cases where you wish to migrate existing
Btrieve API applications to .NET or if your existing application does
not have DDFs. However, due to the fact that the Btrieve API contains
many parameters and to the necessity of code for fetching and storing
application data from the record buffer, application code can become
complicated.
Product Summary
- The product is a .NET Framework class library.
- Enables easy access to Pervasive/Btrieve data from
.NET languages such as C#,VB.NET.
- Supports both Windows and Web applications.
- Automatic conversion of data encoded in the code
page of the locale <-> Unicode.
- Extended class enables maximum performance when searching
Pervasive data.
- In only 1 line of code, it is possible to generate
a DataSet Object and call a method, making filling a grid as simple
as in this sample code.
- Library itself is developed using C++, in order to
minimize the overhead associated with a Btrieve API call.
- By making full use of such .NET class library features
as overloading, the classes are very easy to use.
- Supports True Nullable column data.
- Supports the BigInt data type by mapping to .NET's
Int64.(8byte integer)
- VB.NET and C# sample code is provided for both Web
and Windows applications.
- Full support for Pervasive PSQL's security functionality. This includes Login and Logout methods and support for database URIs.
- Support for both 32-bit and 64-bit .NET applications.
- Support for access to Pervasive/Btrieve data via .NET Framework 3.5's LINQ.
- Runtime license free.
Supported Pervasive PSQL Versions
- Pervasive PSQL v11
- Pervasive PSQL Summit v10
- Pervasive PSQL v9
- Pervasive.SQL V8
[Note]
* Pervasive PSQL is not included with this product. A separate purchase
is necessary.
* The above supported product list is the version of the engine not the
version of the Btrieve file.
Supported .NET Languages
- Microsoft Visual Basic.NET
- Microsoft Visual C#
- Microsoft Visual J#
Supported Programming Environments
- Microsoft Visual Studio 2010
- Microsoft Visual Studio 2008
- Microsoft Visual Studio 2005
[Note]
* Microsoft Visual Studio .NET and Microsoft Visual Studio .NET 2003 are no longer supported from Version 3.0 of this product.
Price
- Development environment for 1 user US$ 780
- Runtime license free
- English and Japanese versions available.
Product Updates
Upgrades from version 3.0 to version 4.0 can be made free of charge by contacting bcnsupport@agtech.co.jp
and sending proof of Btrieve Classes for .NET 3.0 purchase.
An upgrade to version 4.0 of Btrieve Classes for .NET from versions prior to version 3.0 is available direct from
AG-TECH Corp. for US$ 390.
Unfortuneately this upgrade product is only available direct and cannot be purchased via our normal distributors.
For more details, please email bcnsupport@agtech.co.jp.
Documentation
Full documentation for the product is included within the product and the trial version.
The product manual can also be downloaded from this link
.
Purchase
The latest Btrieve Classes for .NET Version 4.0 can
be obtained from www.componentsource.com
( searching for "Btrieve" soon brings up our product).
A 30-day trial version is also available for download from the same site.
Trial Version
A fully functional 30-day trial version of the product can be downloaded from this link. Simply unzip the downloaded file and run the setup.exe program within.
Contact
For general enquiries and technical support on this
product, please email bcnsupport@agtech.co.jp
.
|