(Base One logo) .NET database and distributed computing tools

.NET and COM Database and Distributed Computing
with C#, VB.NET, Visual C++, ASP.NET samples

BFC's middleware provides a unified, database and distributed computing interface that is available through .NET, COM, MFC, as well as an end-user, command-level interface. Web and Windows software built with Base One's components gain substantial benefits, such as:

  • Interactive (synchronous) or batch (asynchronous) applications (for grid and cluster computing that reduces costs and improves performance)

  • Local or remote database connections (with Web Services modeled as simple database operations)

  • Efficient, secure access to Microsoft, Oracle, IBM, Sybase and MySQL databases (on Windows, Unix/Linux, and IBM mainframe servers)

  • Smooth migration path from Visual Basic 6 and ASP to VB.NET, C# and ASP.NET

The .NET database interface can be used instead of (or in addition to) ADO.NET in programs written in C#, VB.NET, ASP.NET and Visual C++. Similarly, the COM interface can be used instead of (or in addition to) ADO in programs written in Visual Basic, ASP and VC++.  BFC (Base One's programming toolkit) has sample programs showing all of these combinations, including Windows and Web Forms .NET applications.

It's also easy to use BFC's .NET and COM objects to store OLE documents in a database. The database classes make support for COM documents particularly convenient through attached objects, allowing database records to include compressed BLOBs (Binary Large Objects), which can contain OLE documents, as well as text, images, recorded sounds, programmer defined data types, etc. Every attached object has an ATTACHED OBJECT TYPE, which identifies the type of data in the object, including, if applicable, an OLE class ID.

Base One Foundation Component Library (BFC)  
BFC - Base One's programming toolkit

.NET and COM Interfaces for C#, VB, and C++

You can use .NET or COM to rapidly build Rich Client applications with C# and Visual Basic.  (Visual Basic is the best selling programming tool of all time: in terms of programmer hours, number of applications, or dollars spent, at least an order of magnitude more real-world database applications have been coded in Visual Basic than in Visual C++.)

C#, VB, VB.NET, ASP, ASP.NET (for web sites), VC++, and any other language that supports the popular COM or .NET  interfaces can use BFC components to do database access and security control. The complete database interface provided by BFC is a C++ class library that is also made available through both BFCCOM (which is a COM in-proc server) and BFCNet (a .Net assembly). BFCCOM is well suited to building both Visual Basic Rich Client applications and thin client web applications using ASP.NET, ASP, ColdFusion, JSP or any other web development environment that supports COM objects.

BFCCOM and BFCNet provide a single, simple database interface that works on a laptop, a LAN, a secure intranet, or across the Internet, supporting all of the main commercial relational databases. Programmers can create new Visual Basic applications or modify an existing ones so that they can work securely on both a LAN and against a remote databases across the Internet. No code changes.

ActiveX Grid and Combo Controls

Both .NET and COM Windows programs can easily incorporate Base One's data-aware ActiveX grid control, combo control, and edit control.

The BFCGrid ActiveX control is part of BFCCOM and is used on the client-side. This ActiveX control displays database records (a result set) in a tabular form. BFCGrid makes it simple for programmers to guarantee great performance when browsing large databases!

BFCCombo is another client-side BFCCOM ActiveX control. It is used for simple and advanced COMBO boxes. BFCCombo uses high-efficiency database access for a tabular display of a set of database records in a drop-down dialog. Both one and two column combo boxes are supported as well as a search facility that allows end-users to select quickly from a large set of records.

BFCEdit is an ActiveX control providing "masked" edit functionality. Data entry of different types such as text, numeric, currency, date, etc. are made convenient by the BFCEdit control.

BFCCOM and BFCNet include Visual Basic and C# samples showing the use of BFCGrid, BFCCombo, and BFCEdit.

.NET and COM Database Command Processor

The .NET and COM versions of the Database Command Processor can be used inside a program to execute SQL data creation or data modification statements and DOS command lines. BFCCOM and BFCNet samples in each supported language illustrate this kind of usage.

The Command Processor can run complex command files (scripts) that may contain SQL, DOS, and Windows commands, plus special BFC commands for viewing, loading and unloading large databases.

(click for more on the Base One Command Processor)
Sample Command Processor Script Editing Screen

Building In-Proc and Out-of-Proc COM Servers

BFC (Base One Foundation Component Library) supports not only using COM objects, but also developing new Visual C++ COM components, either in-proc servers or out-of-proc servers. The implementation of BFCCOM, itself an in-proc server, is an example of implementing a custom in-proc server. The Base One Internet Server (BIS) contains a practical example of developing out-of-proc COM servers.

The MFC Visual C++ implementation of BFCCOM illustrates addressing some important issues related to developing COM components in general. The source code illustrates handling registry setting, threading model, multi-user issues related to concurrency and synchronization, dual interface, advanced error handling, etc.

BFCCOM.dll serves as an example of building a commercial in-proc COM server. BFCCOM implements COM objects as well as ActiveX controls. The functionality of all the BFC database classes are made available through the COM interface provided by BFCCOM and the .NET interface provided by BFCNet.

A table (grid) control, combo control and masked edit control are implemented as ActiveX controls by BFCCOM. The macros and base classes used by BFCCOM are general purpose and can be re-used for developing completely different COM components and ActiveX controls.

The out-of-proc COM objects implemented in a BFC application can be used by any COM or .NET client, such as ASP or ASP.NET pages, another C++ application, VB or C# application, Cold Fusion application, etc. 

Visual Studio Integration | .NET | MFC | MFC/BFC | BFC

Home Products Consulting Case Studies Order Contents Contact About Us

Copyright 2012, Base One International Corporation