Override 'Equals' In A Structure With All Shared Members?
Dec 5, 2011I have a structure written in vb.net with all shared members. I need to override 'Equals', '==' and '!=' to avoid a warning.
View 4 RepliesI have a structure written in vb.net with all shared members. I need to override 'Equals', '==' and '!=' to avoid a warning.
View 4 RepliesAt the moment I'm trying to create a kind of model in vb.net which can be used to create/fetch database entrys.
I created a main class Model with a shared function to fetch the datasets, e.g. Model.find(). Now I'd like to create Classes which inherit the main Model-Class, e.g. a separate one for users: UserModel.find() => "SELECT * FROM users".
What I need now is to find a way to tell the Class which table it should use. I thought about an abstract String "table" which is a constant in each "child-model", but how could this be implemented as it's not possible to override shared members?
Edit: Maybe this will make it a little clearer what I mean:
Public Class Model
Public Shared _controller As Controller
Public Shared table As String
[Code].....
So I want a shared method which finds all database entries and gives back an array of instances of its own type, e.g. Model(). That's why I wanted to keep the find-method shared and not bound to an instance.
ok this is annoying, i've got a structure RInteger.
Private VAR_Value As Integer
Private VAR_Max As Integer
Private VAR_Min As Integer
[code]......
Why does intellesense show shared members? e.g:Dim x as doublex.epsi 'Epsilon will show up as a valid member in intellesenseIs there a way to change this behavior?
View 1 RepliesI was looking on the interweb to see if there were any good examples on how to initialize shared members within a class while still initializing instance variables.[code]How do I initialize both instance and shared members without re-initializing the shared members every time an object is created from a class?
View 1 RepliesI have faced with a situation in VB.NET and C# (.NET2) with the visibility of the static/shared members. It seems to me a little strange in VB.NET:
public class A {
private static A instance;
public static A Instance {
get { return instance; }
} public string Name { get { } }}
[Code] .....
Shared member behaves like a class public one I can repeat it to infinite..
I'm having some headaches using Structures and functions that return Nothing in VB.NET. [Code] In the previous code, when I return Nothing as result of Foo function I'd expect that st is Nothing. But this is not what happens. Then I found in MSDN documentation: Assigning Nothing to a variable sets it to the default value for its declared type. If that type contains variable members, they are all set to their default values.
So I discovered that when I assign Nothing to a structure, all its members are set to their default values, instead of the structure itself.
Also, I tried to make st a Nullable type by declaring: Dim st As Nullable(Of Test) = Foo()
but, still I can't check if st is Nothing by using: If st Is Nothing Then
or If st.Equals(Nothing) Then
So, questions:
1 - Is it possible to assign Nothing to the structure and not to its members?
2 - How can I check if a return structure value is Nothing?
I'm writing a WCF-Service and I split up my service class to multiple partial class files, so every ServiceContract-Implementation gets its own file. I have one file however that should contain e.g. members that are used by every partial class file such as a logger. The service is hosted with IIS 7 if this matters in any way.
[Code]....
The code compiles fine, but at runtime I get an BC30451: The name m_Log is not declared Error (Don't know the exact words for it. I get a german message ;) ). I don't think it has something to do with the type of m_Log or a depending assembly because I get the same error if i try this with a String. What am I doing wrong? How can I make this work? Edit: I was trying the same thing in a simple console application without any problems. :(
I took over an ASP.NET application and have found this throughout several classes in the application. The programmers before defined several shared/static variables that act as "complex enums" throughout the application. As a fairly new programmer, it doesn't look like best practice.
Here is an example:
Public Shared SecureCommentsWrite As New Task("Secure Comments Write")
Public Shared SecureCommentsRead As New Task("Secure Comments Read")
Public Shared EditEmergencyContact As New Task("Edit Emergency Contact")
Public Shared DisplayPersonalReferences As New Task("Display Personal References")
Public Shared EditPersonalReferences As New Task("Edit Personal References")
The constructor takes the description, then loads the ID key from the database using a stored procedure (the database is SQL Server.) This seems like a good idea since we deploy this application to multiple databases and want to ensure that we load the ID key that's in that database in case it changes. However, since there are literally hundreds of these in the application, the first load takes a while.
So I did tons and tons of work trying to make an interface for a common set of classes. The idea was to make an interface that each class could use within the set, but ultimately each class is different. Turns out interfaces do not like shared members. What I tried:
Public Interface ISomeInterface
Shared Property Meta() as Object
End Interface
Public Class A
Implements ISomeInterface
[Code]...
Obviously, had I done my homework on this, I would have known that shared members can't be use in interfaces. Should I just leave the individual classes completely responsible for handling its shared members? Is there another way to keep coupling down to a minimum with shared members? Theres about 20 something or so classes that will implement a single interface.
In VB.NET, why can't I see a member of a structure when I make it a nullable type?
Example:
Public Structure myNullable
Dim myNullVar As Integer
End Structure
Sub Main()
[Code]...
I was looking on the interweb to see if there were any good examples on how to initialize shared members within a class while still initializing instance variables. I did find an expression that might fit to the answer:
[code]...
How do I initialize both instance and shared members without re-initializing the shared members every time an object is created from a class? Thanks!
I've read that modules are basically shared classes. For a module though, you can call a method directly without prefixing the module name. So I can do this: methodTest("abc", mod1Enum.enum2)But for a class with shared members I have to fully qualify the method call, and in this case fully qualify the enum:[code]In our conversion from VB6 to .NET the need to fully qualify all calls like this might be an argument for us to bring our VB6 modules over as modules instead of converting them to classes.
View 7 RepliesCan we override a Public Shared method in derived class? If not why?
View 2 RepliesI am trying to figure out how to print specific members of a structure when I only have to pass the structure itself i.e.
Dim Point1 as PointF = New PointF(15,30)
Debug.Print(Point1) ' This will output "{X = 15, Y = 30}" by default
I am trying to figure out how I can do the same with my own strucutres, for example:
Dim Point2 as PointF2D = New PointF2D(15,30)
Debug.Print(Point2) ' This will output "ClassName.PointF2D.Point2"
How can I get my structures, when passed to a print statement, to print specific members of that structure by default? P.S. Please give another way other than overloading the .ToString function.
how you init a variable when it is created by assigning the value on the same line in which it is declared. Is there a way to do this with members of a structure?
View 4 RepliesWhen it comes to constructors in a Structure type ,it is fact that we can not explicitly provide the default constructor .It is provided by the runtime. Ok, another point that is applicable to C# language is that if we are defining a parametrized constructor then it is compulsory to initialize all fields . We can not leave any field uninitialized , since the runtime will not call default constructor if we are calling parametrized constructor .Its logically right , but in VB.NET language , actually you are free to leave any of the fields uninitialized in your parametrized constructor.
[Code]...
I have a main array that is a structure with three fields which consists of id_code(int)members(int) and annual_income(dec). I've get everything entered and I want to go to a procedure that prints a report giving the total percentage of families below a particular income and the level is different depending on how many members there are in the family.
Option Strict On
Public Class Form1
[code].....
I implemented a PagedModel class to wrap around IEnumerable to provide paging data for grids in my MVC app.I used Resharper's auto-generated Equality code telling it to check the data, total rows, page number, and page size fields.[code]I found the call to Equals(other._ModelData, _ModelData) peculiar, as AFAIK, this checks that it is the same object rather than that the contained items are the same. Because my tests were failing anyways, I went ahead and changed it to other._ModelData.Equals(_ModelData) with no success. Then I reflected into it at debug time and found that other._ ModelData.GetType().GetMethod("Equals",{GetType(Object)}).DeclaringType was Object! Obviously, that would result in the failed comparison.I came up with a solution to create a EnumerableEquals method which compares every item in the two enumerables to confirm the are the same, but it seems sloppy. Is there anything I can do to use the normal .Equals method? [code]
View 2 RepliesI can access a module from code behind but not from the aspx page in inline VB code <% ... %>.
View 2 RepliesI have a class like this:
[Code]...
It works, when I make getBar methods public, but I don't want to expose these unneccessarily. Why I can't call private shared methods from a public one in the same class is over my head. I'm using .net framework 4.0 in a web application.
I've taken over the maintenance of the website (ASP.NET VB) and on one particular page I noticed the below code
Inherits System.Web.UI.Page
Public Shared UserNumber As String
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
[Code]....
My question is whether the variable UserNumber can be accessed or changed by any other user than the current one?
Given in the following language specification, for me at least, calling Db.Foobar() [In the following code] does not indeed call off to the Shared Constructors of the base classes. I am curious as to a) is this my own fault for doing something wrong or b) is this an error in the language specification[code]...
View 2 RepliesI am comapring 2 contract IDs, one is sent by the caller, the other is in a file and read into a variable. I use a string.Equals method to compare the contract IDs. The contract IDs compare successfully if the number in a contract ID is more than 1 away from the the other for example:
CTSRG0006 & CTSRG0005 = false
However
CTSRG0006 & CTSRG0007 = true
the code I am using for the comparison:
If fileContractID.Equals(calledContractID) Then
isFileValid = True
End If
I'm making a sort of VB.NET calculator that has all of the advanced features. I would also like it to have programming-style tips so that I won't have to build in things like ABS and EQUALS.
For example, ABS is sqrt(x ^ 2) and EQUALS is NOT(OZ(x-y)). NOT is 1 - OZ(x).
(x and y are the variables.)
I've come up with a few, but many rely on OZ(). OZ stands for 1/0. I need a formula that will return 1 if the value is <> 0, but 0 if it is equal to 0. I've worked on this for days but I can't come up with anything. Does anyone know how to do this?
i read it on internet article already, and tested it already. but it didnt show any difference.
View 3 RepliesModule Module1
Public Structure structure1
Public TRANS() As structure2
End Structure
Public Structure structure2
Public X() As Integer
End Structure
End Module
In code, why wouldn't this work? intMax = intTopValue = 20
View 2 RepliesWhat is the difference between Equals and = in LINQ?
Dim list As List(Of Foo) = (From a As Foo In FooList _
Join b As Bar In BarList _
On a.Something = b.Something _
Select a).ToList()
versus Dim list As List(Of Foo) = (From a As Foo In FooList _Join b As Bar In BarList _On a.Something Equals b.Something _Select a).ToList()
I have three classes which implement an Interface iComparesWith, and I wish there to be a single function such that each iComparesWith object of any of the three implementing classes should be able to compare itself with any other iComparesWith object, again, of any of the three implementing classes, and know if the two objects are equal. How can I code this so that the comparison code is only written once? Is it the case that I will have to create a top-level MustInherit class which implements the equality comparison, and have MustOverride methods for all of the methods of iComparesWith?
View 1 Replies