References - Can't Access The Functions In The DAL Class From The BLL
Apr 26, 2011
I have recently started learning VB.NET. I created a simple 3 tier windows application. The DAL project contains a class with a number of functions. In the BLL project, I've added a reference to the DAL project, but I still can't access the functions in the DAL class from the BLL. However, if I change the DAL class to a module, I can access them then. Both the DAL class and its functions are public.
I am new to .NET 4 and VS 2010. I am using VB 2010 and have made a class and need to know how i can access those functions in the class within another form. So there is a function say of XYZ in the class named classes.vb and need to get to it from form1.vb
This is my first major application using multiple classes. It is written in vb and I know about creating objects of the class and using that instance to call functions of the class. But how do I create an object with constructors to allow another program written in C# to access my classes and functions and accept things from the program.
I need to create unit testing project for my current website. The currentw ebsite si written in VB. All unit testing examples are using interface to create mock object. My current VB class does not implment any interface. Can I add interface and implement it to my current class and functions without affecting or changing codes to any pages in my website that call the functions? For examples my current class is like:
Is there a way to call functions within a class upon instantiation of that same class? Basically, I have functions within a class, but I want to automatically call some of those functions simply when there is an instance of the class created.
Basically, I have this structure:
Dim instance as new class instance.function1 instance.function2
Role Public Class Role Public Property RoleID As Integer Public Property CreatedBy As User
[code]....
The situation is like when we create roles, we will save who created this role. So i have a CreatedBy Property of type User. Similarly when we create a User, we will mention what role the new user belongs to .So i have a property called "Role" of type "Role". This circular reference giving me StackOverflow exception as its recursive when i create an object of User class.How do i handle this ? should i restucture my entties ? how ?
I have Crystal Reports 2008 installed on my win7 laptop but when i go to insert references from my application settings the CrystalDecisions references are missing and im not able to find them. Note: they do exist in my "c:windowsassembly" folder.
Our application uses a custom DataAccessLayer class almost exclusively, and within that we do use Data Access Application Block (currently version 2). We are getting the infamous "GetOrdinal" error sporadically. We are not using out-of-method connections. We are using DAAB version 2. Below is a typical example of our DAL methods:
Public Function MyDALMethod(ByVal Param1 As Integer, ByVal Param2 As Integer) As System.Data.IDataReader Dim db As Database = DatabaseFactory.CreateDatabase()
[Code].....
My main question is should these DAL references be disposed somehow? It's a custom class written in VB.NET, so it doesn't implement IDisposable so I'm not sure if there's anything to be done or not, but we do have errors and issues (like the GetOrdinal problem) which seem to be load-related, and I'm wondering if this is part of the problem.
Background: (Office 2007 and XP Pro all Up to Data; Net Framework 3.5)Two data files are compared one to the other (in Access via VBA) to ascertain matches & non-matches. This aspect completed in Access because of Access's large datafile capacity
The matches and non-matches are passed to Excel via Offine Automation In short, I am attempting to ascertain the "Access-related" VB.NET References required in VB.Net Solution Explorer.
I have included snippets of the VBA code for examples of the Access objects.I would like some knowledge from an expert in Office Automation and VB.NET.
I am currently trying to write classes so that I can access certain functions from any form within my VB project.
My class is defined thus:- Public Class testclass Public Function showmes() MsgBox("Hello everyone"") Return 0 End Function End Class
I have added the class into my form using this at the top in the form: Imports WindowsApplication1.testclass Obviously, WindowsApplication1 being the name of my project, testclass being within a VB file, saved with my project.
I have attempted to call the function from the form using this: Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click showmes() End Sub
However I am getting the error "Reference to a non-shared member requires an object reference." I don't understand why there is a problem, since I have used imports to reference the class.
I currently have a VB.NET class named "Customers" and it's been steadily growing in size and I now have a couple dozen functions in it. Is there a way of maintaining the functions in the same class? Since they still use common private methods, but group them by similarity.[code]I guess I wasn't clear on where I wanted this grouping to occur. I want the groupings to be almost like namespaces/classes in IntelliSense when I use my Customer class.I currently use Regions but they only help when seeing the code, not when using the class.
if anyone knows if I can get a listing of all of the sub/functions in a class/module. Just the definitions (That is, the name, paramaters etc., but not the code).
I have large group of functions that I would like to store in basically a library and simply call the functions from the controls on my forms. Back in VB 6 I would have done this with a module, but now I have been told that a Public Class is the correct way in .NET. How should I go about doing this?
This is very basic about the layout of classes, subs etc. 1. Should all my subs & functions always be inside a class? I haven't used classes too much before, mostly just a bunch of subs in a form file. Now I downloaded a sample program which I want to develop. This has all the code of the form inside "Public Class Form1": [Code] The code is an example of use of the ZedGraph library. It produce a simple window with one graph/chart. Now I want to develop this code with several tabs, a dusin different charts, file I/O and so on. I'm ok with most of the specific coding, but my question is on the general coding;
2. Should I continue my subs&functions inside this form? inside this class? inside a new class? Earlier when I've NOT been using class, I can make global variables by placing the "Dim" outside the subs. This does not seem to work within a class. 3. Should I avoid global variables all together, or how is this done without always passing arguments?
Also I will make more forms, for program options etc. 4. Should these forms be coded as classes? or just subs&functions in a form? Obviously I'm not well trained on the proper use of classes and have trouble to find this easily explained.
i am comfortable with class, namespace ,Sub ,Function ,Properties ...and so on. i studied about Custom Controls and Extension methods. There i found something new so called Attribute that are placed before classes and Functions definitions.[code...]
The project requires a form that has textboxes for a students name and the amount of books they have read, and a label where the points they have earned for their reading is displayed. Also a seperate form with About information and yet another seperate form for summary information.
I'm wondering how I can go about creating something like a header file to contain some verbose functions I don't want to have to look at after I get them created. Something like in c++ like.. #include "classfunctions.h" to hide all the nasty stuff you don't want anyone to see.
I have recently come across some code that has the following. First there is a Interface with the following function Function Validate() As Boolean. That interface is then implemented in the an 'ABSTRACT' class like this. Public MustOverride Overloads Function Validate() As Boolean Implements IBusinessEntity.Validate
Question 1: Why use Overloads in the Abstract class implementation.
Question 2: The Abstract class is then inherited into a class (TestClass). In TestClass the Validate function is implemented as follows Public Overloads Overrides Function Validate() As Boolean. I understand the Overrides keyword is to insure that this is the version of the Validate that you want called and not the Abstract class version but why again use the keyword Overloads?
From what I understand you can overload a constructor of a class by simply changing the constructor signature. Also, you overload Methods and Properties of a class by using the Keyword Overloads. But why do it when your implementing an Interface method, or an Abstract Class method that's inherited.
I have a number of unrelated subs and functions that do various things on my server (e.g. Lighting control, data caching, server maintenance, etc). They are all in various classes which I have coalesced into a single solution.My goal is to create a single, simple interface which each of these disparate classes can be integrated and called from a command line interface. Instead of hard-coding a longish case statement which parses arguments and passes them to the various subs, I wanted to make a generic class which can be instantiated with a minimum of information and put into a data structure. Ideally, adding a new function would involve:
1.) Providing the function pointer (Delegate). The delegates will have various signatures. This is the crux of the question.
2.) Providing ancillary info such as the command-line callable name, number of arguments, argument types, etc.
I have a 100% working class called "node" which is basically a hierarchical tree of node instances. I can use this to simply organize function calls in related branches. All is working quite well.NodeFunctionDelegate(ByVal args As String) As String.The node takes the arguments passed to it by the command line and sends it as the "args" string as comma-separated. The delegate function then needs to know how to split up these comma-separated values, type them, tryparse them and etc. It then must return some string.It works, but it involves writing a middle-man function stub which can receive the argument string from the node class, do the parsing and type checking, and then call the destination function.My goal is to eliminate this trivial middle-man function. The problem is, I can't figure out how to create a variable-signature delegate for the node class.
I would like to understand the Pro & Cons in using the commonly used methods via Singleton class against Shared (Static) members of a class in VB.Net. It could be in terms Time, Space complexity or best practices. I have a BankAccount class with methods doing some business logic.
Class Foo ReadOnly name As String Public Sub New(name As String, dependentUpon As Foo) Me.name = name
[code]....
The output of New Bar() is:
Dependent created. Dependent upon nothing. Independent created. Dependent upon nothing.
It seems fields are initialized in the same order as they appear in the source code, which (a) leads to an unexpected result, and (b) seems a little puzzling, given that one is normally not permitted to read from uninitialized variables in .NET, yet that seems to be working fine above.I would've expected VB.NET to be smart enough to initialize referenced fields first, and only then those that reference it; i.e. I'd have liked to see this output instead:
Independent created. Dependent upon nothing. Dependent created. Dependent upon Independent.
how to get VB.NET to behave like that instead, without simply having to swap the declaration order of dependent and independent inside class Bar?
I've got a BaseDataClass with shared fields and functions
CODE:
I have several classes that derive from this base class. The derived classes have all Shared functions that can be called directly from the BLL with no instantiation. The functions in these derived classes call the base Init(), call their specific stored procs, call the base CleanAll() and then return the results.
So if I have 5 derived classes with 10 functions each, totaling 50 possible function calls, since they are all Shared, the CLR only calls one at a time, right? All calls are queued to wait until each Shared function completes.
Is there a better design with having Shared functions in your DAL and still have base class functions? Or since I have a base class, is it better to move towards instance methods within the DAL?
making a general functions class library that will be used in several applications and asp pages, sometimes running at the same time.I've looked at a lot of samples on the web and they all show you to create an instance of the classlibrary namespace or the classlibrary class.
IE. dim obj2 as new mycompany.mynamespace.myclass dim n2 as integer n2 = obj2.somefunction(...)
What I did was create my class library and put a class in it and declared a function as sharred, then created my dll.I don't have to create an instance of it and I can use it like the net framework by just coding
The net framework does this, I mean once I imports it I don't have to make an instance of it in every function.All the samples I've seen about class libraries do not use the shared keyword.
I am trying to get a handle on SyncLock and multithreading, but I am having some trouble wrapping my head around exactly how it should be implemented. I have a Public Class Utilities with a many Shared Functions. I want to make sure that each function can only be executed when there are no other concurrent calls to the same function. So If I have 2 functions, A and B in a Public Class Utilities, what is the syntax so that a function "locks" while it is being executed, preventing any subsequent calls until the "locking" thread has completed?
CODE
Public Class Utilities
Public Shared Function A (ByRef i As Integer) As Integer
[CODE].............................
I know I need to wrap the statements of execution in a SyncLock block, but I am unsure of the scope of the parameter used with SyncLock...is it private to the function, class, etc? Can the same object be used to lock both functions if they are independent?