Click here to Skip to main content
Click here to Skip to main content

Grove [.NET Develop Component Kit]

, 19 Nov 2003
Rate this:
Please Sign up or sign in to vote.
for database project developer
<!-- Article Starts - DO NOT ADD HTML/BODY START TAGS--><!-- Download Links --> <!-- Article image -->

 

<!-- Add the rest of your HTML here -->

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

Version Revision Description Date
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.1 1401
  • 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.1 1501
  • 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

Share

About the Author

landws
Web Developer
China China
No Biography provided

Comments and Discussions

 
QuestionRelation diagram in Tool Kit ??? Whe to Find PinmemberPatrick Antonioli22-Feb-06 12:54 
QuestionCan it used in VS2005 Beta 2 ??? Pinmemberjameszhang8217-Jan-06 3:35 
GeneralAn unhandled exception of type 'System.Exception' occurred in grove.dll PinsussAnonymous24-May-05 17:58 
GeneralGroveKit12Beta wont install on VS2005 Pinmemberwatchdog23-Aug-04 0:29 
GeneralCheap Advert PinsussAnonymous29-Apr-04 10:55 
GeneralRe: Cheap Advert PinmemberCDBuffet17-Dec-04 5:24 
GeneralSource code PinmemberSøren Gregersen1-Apr-04 17:40 
GeneralRe: Source code PinsussAnonymous2-Apr-04 0:08 
Generalbad :( PinmemberGevik Babakhani24-Dec-03 16:41 
GeneralNo Constructor Pinmemberkhp29-Nov-03 6:52 
GeneralRe: No Constructor Pinmemberlandws30-Nov-03 20:15 
GeneralRe: No Constructor Please Help Pinmemberkhp2-Dec-03 1:57 
GeneralRe: No Constructor Please Help Pinmemberlandws2-Dec-03 15:35 
GeneralAbout your tool Pinmembersong_liu200027-Nov-03 16:09 
QuestionThis Kit does require .net v 1.1 but not 1.0. Will it work on MSVS.NET 2002 (7.0)? Pinmemberukfam27-Nov-03 2:21 
AnswerRe: This Kit does require .net v 1.1 but not 1.0. Will it work on MSVS.NET 2002 (7.0)? Pinmemberlandws27-Nov-03 14:41 
Questionsupport for MS-Access? PinsussJoeRocket26-Nov-03 8:52 
GeneralGroovy PinmemberWillemM25-Nov-03 9:18 
Generalabout the last newly version Pinmemberlandws21-Nov-03 7:00 
GeneralNot acceptable Pinmemberdog_spawn21-Nov-03 7:13 
GeneralRe: Not acceptable Pinmemberlandws21-Nov-03 16:27 
GeneralSome much gibberish, so little time Pinmemberdog_spawn22-Nov-03 0:34 
GeneralRe: Some much gibberish, so little time Pinmemberlandws22-Nov-03 1:04 
GeneralCOM Exception PinmemberAntonio Barros21-Nov-03 1:22 
GeneralRe: COM Exception Pinmemberlandws21-Nov-03 1:38 
Generalameliorate Pinmemberdog_spawn21-Nov-03 7:15 
GeneralRe: ameliorate Pinmemberlandws21-Nov-03 16:37 
GeneralSource Code PinmemberAntonio Barros20-Nov-03 23:43 
GeneralSource Code PinmemberGevik Babakhani20-Nov-03 15:48 
GeneralRe: Source Code Pinmemberlandws20-Nov-03 19:21 
GeneralRe: Source Code PinmemberSam Dolen20-Nov-03 23:07 
GeneralVery very impressive Pinmemberbmichael20-Nov-03 15:35 
GeneralRe: Very very impressive Pinmemberlandws20-Nov-03 19:25 
GeneralGood job ! Pinmemberkaneboy.net20-Nov-03 14:56 
GeneralRe: Good job ! Pinmemberlandws20-Nov-03 19:29 
QuestionUseful or just an overblown wizard? Pinmemberdog_spawn20-Nov-03 14:30 
AnswerRe: Useful or just an overblown wizard? Pinmemberlandws20-Nov-03 14:52 
Generalnot understood? Pinmemberdog_spawn21-Nov-03 7:20 
GeneralWindows installer not in english PinmemberAntonio Barros20-Nov-03 10:18 
GeneralRe: Windows installer not in english Pinmemberlandws20-Nov-03 14:40 

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

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

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.150327.1 | Last Updated 20 Nov 2003
Article Copyright 2003 by landws
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid