?
Solved

Using MyBase, MyClass?

Posted on 2009-03-29
7
Medium Priority
?
324 Views
Last Modified: 2012-05-06
Hi EE,

I am very new to .net and have created a class that handles all inserts, updates, deletes, etc. for all my lookup tables.
I have enumerated all my tables and defined how many fields they have and the types of fields and then by sending in the table name it creates the insert, update etc. for me.
This class inherits my Basic connection class.
All of this is working.
I am now building a class that will build grids according to what I have specified in my lookup class.  i.e number of columns, field type etc.
I have inherited the lookup class in this new class, but it keeps saying that I need a sub new and it needs to start with mybase or myclass.
The lookup class has a sub new that brings in the connection string and tablename but this class doesn't need a connection to the db.
What is the mybase and myclass and how do I use it?
Thanks
0
Comment
Question by:Sheritlw
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 4

Expert Comment

by:freer
ID: 24014273
> The lookup class has a sub new that brings in the connection string and tablename but this class
> doesn't need a connection to the db

This suggests that you don't want to inherit from the lookup class.

MyBase is a way to call the methods of the base class (from which you inherit) in the sub class (your new class).

MyClass is a way to call the methods of the current class in a way that cannot be overridden.

Tim
0
 
LVL 4

Expert Comment

by:freer
ID: 24014291
See here for the official explanation:

http://msdn.microsoft.com/en-us/library/c8shwxa5(vs.71).aspx

The reason I'm suggesting inheritance is inappropriate here is that normally you inherit because you want a more specialized version of the same thing. Eg. you might have a class Person and inherit from it in the class Employee. However if your new class doesn't need a connection, it sounds like it is a different thing completely, not a more specialized version of the same thing.

Tim
0
 

Author Comment

by:Sheritlw
ID: 24014303
That makes since.
If I take out inheritance, how can I easily use all the properties/functions etc. in the lookup class?
Thanks
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 4

Expert Comment

by:freer
ID: 24014336
You can either have a reference to an instance of the lookup class and call its members. Or you can make the methods of the lookup class shared in which case you can call them without an object instance.

Tim
0
 

Author Comment

by:Sheritlw
ID: 24014378
I changed one of the functions to shared which has a select case for the table names.  It says I cannot refer to an instance member of a class with a shared method etc.
How do I handle that?
Thanks,
0
 
LVL 4

Accepted Solution

by:
freer earned 2000 total points
ID: 24014438
A shared method belongs to the class, not to an instance of the class. Therefore you can't call members of the current instance in a shared method - as far as the shared method is concerned, there is no current instance. You'll therefore generally find yourself either making most of the methods in a class shared, or most of them not shared.

I think you would benefit from taking some time out to read up on objects and classes in VB as its important to figure this out.

Tim

0
 

Author Comment

by:Sheritlw
ID: 24014462
Yes, I agree.  I have been reading and reading for weeks now and still struggling.  It's so different than VB 6, but I will learn.
Thanks for the info... it was good.
0

Featured Post

Enroll in August's Course of the Month

August's CompTIA IT Fundamentals course includes 19 hours of basic computer principle modules and prepares you for the certification exam. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This tutorial demonstrates one way to create an application that runs without any Forms but still has a GUI presence via an Icon in the System Tray. The magic lies in Inheriting from the ApplicationContext Class and passing that to Application.Ru…
It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
Suggested Courses
Course of the Month10 days, 12 hours left to enroll

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question