I have a project that I wrote of .net design time data binding class
library. There is a sample project written in VB .net 2.0, and database
file (SQL Script also included). You have to build the source and place
the database at the root of your c drive, or change the source to match
your chosen location. Be sure to update the password to match you sysdba
password. By no means does the example provide best practices for
security, as it is just for proof of concept. Please give me your feed
back as to if you think that this would be a suitable project for .net
firebird development project.

 

The project that I will send you is great for my needs, but might not be
well suited yet for widespread deployment as some items that a general
consumer might want, aren't included. If you think that this is a good
fit for the firebird project I would like to contribute the source and
time to bring to the level of usability that your provider is at. If you
feel that this doesn't work for this project, then I fully understand.
It is written currently in VB .net 2.0, but I am currently working on a
newer C# version. 

 

The included sample application has design time data binding in use, but
runtime data binding is also just as easy and uses the same syntax as a
dataset. You can add, remove, & update the example. Validation is
included and the error provider icon work for class level validation.
The only gotcha is that upon insert, if there is a duplicate record, you
get a message in the task bar instead of the error icon. There is a fair
amount of data in the database (2004 US census zip code database I
located here http://civicspacelabs.org/home/developers/download ).

 

Once again thank you for your time,
If you are interested at looking at the code please contact me at
[EMAIL PROTECTED]
 

Sincerely,
 

Steven Ramacher



Message body follows: 
Carlos, 
          The project that I would like to donate to the 
community allows a developer to create business objects 
that support design time data binding. At my company, I 
wrote a similar frame work that encapsulates DB2, SQL 
Server, and the Firebird data providers and provides a 
common framework for developing objects. Not only does this 
provide maximum code reuse, but design time data binding 
with class level validation. 

        The benefit that we have realized from this type of 
object binding is that we can write validation rules at the 
class level or the collection level and have it bubble up 
to the data bound controls. This is a good thing if you 
have every tried to do validation from a data table or data 
set. 

        Basically what I did is wrote a base class that 
uses a generic list(of t) and added the need functionality 
to the class to support sorting and design time. There are 
also methods for manual sorting by overriding the sorting 
methods. There is a class that is called access token that 
encapsulated the users login information, this is used for 
all data access transaction. Finally there is a class that 
is a wrapper for the data provider that accepts the access 
token as a parameter. The wrapper class exposes most of the 
provider and adds some functionality that can be used 
across all providers, such as 1 line parameter methods that 
are used like dal.addVarChar(parameter name, data length, 
value). Just a few ways to reduce the amount of code being 
written, without loosing any control over the provider. 

        As a developer, you just need to write your class, 
with some events to say that the property has been updated. 
Beside the standard properties you need to include a status 
property to be used as a dirty flag for data binding. At 
this class level, if you raise an argument exception well 
going through you data validation, it will bubble up to the 
datagridview and show the error icon and the argument 
exception message you raised. In the Collection Class you 
have to write all the data access code, (select, insert, 
update, and delete) but there I have some good examples on 
how to do all of this (I could make a code generator for 
this, but I just don't use them). 
  
        There is no gui interface to the program, but this 
might be an option if needed. This is a tool for people who 
write code, the only drag and drop options that are 
available are when you add the .dll to the tool box for 
design time binding. If people are interested in a fast 
data access, data validation, and increased productivity 
from maximum code reuse then this might be a good choice. I 
have been using variant of this code in production for 
several years (stated out with array, now all generics). 
This code has performed flawless for what we are using it 
for. 

Carlos if you are interested in looking at the code, email 
me directly and I will send you a sample project and the 
source code so you can look at it. There is more work that 
I need to do before it can be released (documentation, some 
refactoring, and support for localization) but that can be 
done rather quickly. 

I would have sent you the project already but I am at work 
and the source is at home. 

Thank, 

Steven

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to