Typecasting without knowing the cast

  • Thread starter Thread starter John
  • Start date Start date
J

John

Hi

I have a data row variable which could be for any of a number of tables in
my apps. How can I type cast the variable to correct type at runtime? I know
I can get the type description using MyRow.ToString but don't know how to
use this to typecast MyRow variable. I need this to write a generic SUB that
can deal with rows of any table type.

Thanks

Regards
 
John said:
Hi

I have a data row variable which could be for any of a number of
tables in my apps. How can I type cast the variable to correct type
at runtime? I know I can get the type description using
MyRow.ToString but don't know how to use this to typecast MyRow
variable. I need this to write a generic SUB that can deal with rows
of any table type.

Maybe you are looking for this:

if typeof row is CustomerRow then
directcast(row, CustomerRow).Member 'any type specific member
elseif typeof row is contractRow then

'...

end if

Type casting without knowing the destination type at design time does
not make sense. Casting is there to be able to write code that is
specific to a certain type. If you don't know the destination type, you
can not write type specific code.


Armin
 
Hi

I have a data row variable which could be for any of a number of tables in
my apps. How can I type cast the variable to correct type at runtime? I know
I can get the type description using MyRow.ToString but don't know how to
use this to typecast MyRow variable. I need this to write a generic SUB that
can deal with rows of any table type.

Thanks

Regards

John,
To know the type of object, use GetType function to determine. Then
maybe you'll have a change for type casting.

Hope this helps,

Onur
 
Hi

I have a data row variable which could be for any of a number of tables in
my apps. How can I type cast the variable to correct type at runtime? I know
I can get the type description using MyRow.ToString but don't know how to
use this to typecast MyRow variable. I need this to write a generic SUB that
can deal with rows of any table type.

Thanks

Regards

Assuming that Row inherits from DataRow, then that is the type you would
be working with.
 
I am trying

CType(MyRow, GetType(MyRow))

but it says 'Error 1 Keyword does not name a type' on GetType.

Thanks

Regards
 
John said:
I am trying

CType(MyRow, GetType(MyRow))

but it says 'Error 1 Keyword does not name a type' on GetType.

Have you read my message? Why do you want to cast at all?


Armin
 
I am writing a library of generalised SUB to handle any table's row that the
user using the library may need to pass to library. I do not know the actual
type of the data row that user will be passing therefore I need to figure it
at runtime.

Thanks

Regards
 
John said:
I am writing a library of generalised SUB to handle any table's row
that the user using the library may need to pass to library. I do
not know the actual type of the data row that user will be passing
therefore I need to figure it at runtime.

Sry, I don't get it. If you don't know the actual type, how do you want
to handle different types differently? That's a contradiction.

If you determine the type at _runtime_, how do you want to take the type
into account at _design time_? Design time is before runtime.


Armin
 
I am writing a library of generalised SUB to handle any table's row that the
user using the library may need to pass to library. I do not know the actual
type of the data row that user will be passing therefore I need to figure it
at runtime.

Thanks

John,

What kind of actions are you trying to take on these rows? Basically,
what I'm saying, is unless you know the type or the types that can be
passed, then you can't get there from here....

Like I said, you can handle all the Rows as DataRow, and that is about
as close as your going to get.
 
Thanks. I know what you mean.

Regards

Armin Zingler said:
Sry, I don't get it. If you don't know the actual type, how do you want
to handle different types differently? That's a contradiction.

If you determine the type at _runtime_, how do you want to take the type
into account at _design time_? Design time is before runtime.


Armin
 
Got it. Thanks

Regards

Tom Shelton said:
John,

What kind of actions are you trying to take on these rows? Basically,
what I'm saying, is unless you know the type or the types that can be
passed, then you can't get there from here....

Like I said, you can handle all the Rows as DataRow, and that is about
as close as your going to get.
 
Back
Top