Click here to Skip to main content
15,893,588 members
Articles / Web Development / ASP.NET
Article

Grove [.NET Develop Component Kit]

Rate me:
Please Sign up or sign in to vote.
2.52/5 (25 votes)
19 Nov 20033 min read 214.4K   1.1K   40   40
for database project developer

 

Introduction

    Grove is a component  kit for .net project develop . Grove Develop Component Kit include Grove Component and Grove Tool Kit.
    Grove Component is an object-oriented develop component that base of .net framework , It supported multi-database , it provide standard tow tier , three tier , or N tier develop mode.
    Grove Tool Kit is an Addin base on .net develop environment ( Visual Studio 2003/2002 ) , It can preview entity class or xml description from data table at any databases , but it only support MS SQL Server for the moment.

How Grove can do?

    It can help you to develop .net project from an new sight , Grove Kit is useful for yours group , it can help your project finish fast

Version Scheme

VersionRevisionDescriptionDate
1.0 
  • Component can do the entity class persistence , it like insert , update , delete etc , and entity class can do simple query
  • Tool Kit can preview and generate entity class or xml description
2003-6-10
1.11401
  • Component can do relationship query , it like INNER JOIN , LEFT JOIN , RIGHT JOIN , FULL JOIN etc
  • Tool Kit can build these relationship by itself , it look like MS SQL Server Relationship constitution , and use like too
2003-9-20
1.11501
  • Component can do IN query , it like sub collection query , and change object query mode , use Object Query Interface , abandon persistence manager to query
  • Tool Kit can preview xml description for entity class or relationship query
2003-11-10

Next plan :
  1. EXISTS Relationship Query
  2. Rebuild xml description for relationship query , and give a parser
  3. Reflect SQL to Tool Kit Relationship format

Current Version :

  1. Entity class can persist by itself 
  2. Tool kit relationship builder , visual UI
  3. Develop multi-mode supported
  4. Simple Log Management
  5. Simple Exception Management

Practical Sample

  • Entity class persist by self
Use ToolKit create entity class : 
    [DataTable("Customers")]
    public class Customer:Grove.DataObject.EntityClassBase
    {
        int _CustomerID;
        string CustomerName;
        string CustomerURL;

        [KeyField("CustomerID")]
        public int CustomerID
        {
            get{return this._CustomerID;}
            set{this._CustomerID=value;}
        }
        [DataField("CustomerName")]
        public string CustomerName
        {
            get{return this._CustomerName;}
            set{this._CustomerName;}
        }
        [DataField("CustomerURL")]
        pubic string CustomerURL
        {
            get{return this._CustomerURL;}
            set{this._CustomerURL=value;}
        }
    }

Persist by self :
    Customer c=new Customer();
    c.CustomerName="tryitsoft";
    c.CustomerURL="http://www.tryitsoft.com";
    c.Insert();//insert a new customer
    c.CustomerID=1001;
    c.CustomerName="chengdu tryitsoft";
    c.Update();//update customer
    c.CustomerID=1002;
    c.Delete();//delete customer
    c=c.GetObject(1005);//retrieve a customer
    string filter="CustomerName=’tryitsoft?quot;;
    DataSet ds=c.GetObjects(filter);//retrieve customers by custeomr name

Description : if you want to entity class can persist by itself , entity class must extend Grove.DataObject.EntityClassBase
  • Relation query by entity class
Use Tool Kit create relation entity class :
[RelationTable("OrderRelationQueryResult",BeginWithTable="Orders")]
public class OrdersRelationQuery
{
    [RelationReflect("Orders","Order Details")]
    [RelationField("OrderID","OrderID")]
    public string Relationship_1
    {
        get{return "[Orders].[OrderID]=[Order Details].[OrderID]";}
    }

    DateTime _RequiredDate;
    [DataField("RequiredDate",TableName="Orders")]
    public DateTime RequiredDate
    {
        get{return this._RequiredDate;}
        set{this._RequiredDate=value;}
    }
    int _ProductID;
    [DataField("ProductID",TableName="Order Details")]
    public int ProductID
    {
        get{return this._ProductID;}
        set{this._ProductID=value;}
    }

}
Relation diagram in Tool Kit :

Execute Query by relation entity class :
    IObjectOperator oo=ObjectOperatorFacotry.GetObjectOperator();
    IObjectQuery oq=oo.NewQuery(typeof(Customer));
    oq.Filter="";//use entity property name to set sql filter 
    oq.OrderString="";//use entity property name to set order string
    ArrayList result=oq.Execute();

Tool Overview

    Grove Tool Kit is an Addin tool for visual studio .net , when you installed it ,  and open the Studio IDE , please find it in tool menu in Studio IDE , if you can 't  found it , you can execute 'ReCreateCommands.reg' to register again , this file can found in your install path .
    Click the 'GroveToolKit' item in tools menu of Studio IDE ,  and set the database connection string , and connect to DB :

    Now , you can select a table , and click the 'preview entity class' button of tool bar , and then :

    You also can click the 'preview xml definition' button to preview :

    When you want to build a relationship query , you can select the 'Build Relationship Query' button ,  and choose the entity class option to next , and you can see a white form , in here you must add table first , and link these tables's relation , it use like MS SQL Server :

Project Sample

  • Rainbow(sz)  Bug Management System

Support

Support email : <landws> cnlxp@msn.com

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
China China
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralRe: Very very impressive Pin
landws20-Nov-03 18:25
landws20-Nov-03 18:25 
GeneralGood job ! Pin
kaneboy.net20-Nov-03 13:56
kaneboy.net20-Nov-03 13:56 
GeneralRe: Good job ! Pin
landws20-Nov-03 18:29
landws20-Nov-03 18:29 
QuestionUseful or just an overblown wizard? Pin
dog_spawn20-Nov-03 13:30
dog_spawn20-Nov-03 13:30 
AnswerRe: Useful or just an overblown wizard? Pin
landws20-Nov-03 13:52
landws20-Nov-03 13:52 
Generalnot understood? Pin
dog_spawn21-Nov-03 6:20
dog_spawn21-Nov-03 6:20 
GeneralWindows installer not in english Pin
Antonio Barros20-Nov-03 9:18
professionalAntonio Barros20-Nov-03 9:18 
GeneralRe: Windows installer not in english Pin
landws20-Nov-03 13:40
landws20-Nov-03 13:40 
Oh,I am sorry that.
I have rebuilded a new english version zip, now

you should download GroveKit.zip again to look E context -___-


from this landws~

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.