Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 285
  • Last Modified:

The following code is my attempt to dynamically set the size of an array and then to dynamically assign values to it. However it is incomplete and I could do with some assistance.

The following code is my attempt to dynamically set the size of an array and then to dynamically assign values to it. However it is incomplete and I could do with some assistance.

Any feedback would be appreciated.

If someone could complete the missing links in the code I would be very thankful.

Dim MyArray() As Integer
Dim nCountOfRecords As Integer
Dim I As Integer

Dim cnn As String = (ConfigurationSettings.AppSettings("SomeWebSite"))
    Dim objConnection as new sqlConnection(cnn)
     Dim objCommand as new SqlCommand("procThatCountsTheIDs", ObjConnection)
    objCommand.CommandType = CommandType.StoredProcedure
     
     Dim ObjCountRecords as new SqlParameter("@ObjCountRecords",SqlDbType.int)
     ObjCommand.Parameters.Add(ObjCountRecords)
     ObjCountRecords.Direction=ParameterDirection.Output 'Gets the value that will be the array size

Try
     objConnection.Open()
     ObjCommand.ExecuteNonQuery()
     objConnection.Close()
     Catch ex as Exception
     Response.Write("Error:" & ex.Message & "<br/>")
     End Try

' Assign the number of records to the 'nCountOfRecords' variable

nCountOfRecords =(ObjCommand.Parameters("@ObjCountRecords").Value)   'Should this be... (ObjCommand.Parameters("@ObjCountRecords").Value)-1.....?
    ReDim MyArray(nCountOfRecords)   ' re-dimension as needed

'It seems to me, the following code dynamically sets the size of the array so do I need to do another DbQuery and then assign the actual IDs to the  array?
    ' Assignment
    For I = 1 To nCountOfRecords
    MyArray(I) = I '<- this will a assign I to MyArray
    Next

'So now I need some code that assigns the ID to the newly created array

'So code here.............


'Now display ....say....MyArray(4) and MyArray(22)
'Just use a couple of labels or something.

Cheers

PG
0
pgilfeather
Asked:
pgilfeather
  • 4
  • 2
  • 2
1 Solution
 
dimitry_dimitryCommented:
Use array.createinstance to create an array of specified type and length.
use array.copy to copy elements from array 1 to array 2, specifying starting and ending bounds.
these routines can be used to implement array resizing.
You can also use ReDim statement
0
 
pgilfeatherAuthor Commented:
dimitry_dimitry

No point using English....Im using VB.NET

Cheers

PG
0
 
dimitry_dimitryCommented:
And what?
VB.NET does not allow dynamic array creation methods that I posted?
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!

 
pgilfeatherAuthor Commented:
dimitry_dimitry,

Please dont mistake my short response as sarcasm, because I genuinly wasnt trying to be sarcastic.

The reason for such a short response was simply to convey that I was looking for some actual VB.NET code. It clearly says this in my question.

Sorry if I offended you, it was never my intention.

Thanks for trying to help, I really do appreciate it.

Kind Regards

PG
0
 
IceColdasCommented:
try this one
Dim MyArray() As Integer
...
ReDim Preserve  MyArray(nCountOfRecords)
0
 
pgilfeatherAuthor Commented:
IceColdas

So how does this fit into my question.

Cheers

PG
0
 
IceColdasCommented:
declare at first MyArray as an array of 50 elements (or whatever u want)
read every value in MyArray when u execute the DBquerry, and if the size of the array must grow, then allocate another 50 elements to it. And so on.
0
 
pgilfeatherAuthor Commented:
Thanks
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

  • 4
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now