.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

[RESOLVED] Cannot deserialize an array of objects (of variable type)

Posted By:      Posted Date: May 22, 2011    Points: 0   Category :WPF

Hi helpful folks and gurus

I have been developing an application which uses a derived class inherited from TreeView, with the aim of putting custom objects on the nodes.  The method I have been using is to have a variable array against the node (of type object) which contains variables in custom classes to contain each of the variables associated with the node.

The two problems I had to overcome were, how to serialize a TreeView, and how to serialize an array of objects (of variable type).  Good thing is I overcame both of these with some work of some other folks (and 3 days of my own work).

TreeView: http://www.codeproject.com/KB/vb/TreeViewDataAccess.aspx?display=Print

Object Array (NOT of variable type). adapted to variable type: http://www.codeproject.com/KB/XML/xmlserializerforunknown.aspx

Serialization works a charm..  Deserialization naddah..  Can find no sufficent documentation for me to debug and work on manual deserialization (of only one variable, the variable array of objects).  All others are handled by the regular deserializer.

Effectively the xmlserializerforunknown URL provided a solution which manually handles both the type handling and the handling of the object array.

The main error I'm having lies in the ReadXml, function.  I just can't align the xml with the code.


View Complete Post

More Related Resource Links

Class which contains an array of objects of type "Class2"



1  Partial Class _Default
2  Inherits System.Web.UI.Page

3 Public Function Ohjoy(ByVal X As Integer) As Integer
4 Dim theClass As New Class1 '= New Class1()
5    theClass.ReSize(0)
6    theClass.myBaby(0).GetName(0) = "Hello" 'Property Chars is read only'
7    Return 1
8 End Function
I have a first class named "Class1". I have a second class named "Class2" Class2, is a member of class 1,
and is implemented as an array of objects of type Class 2.

If I try and call the Accessor GetName() my hard coded value "Hello" in my accessor is not returned? Only
an alpha character like "T"

Also if I try and assigne a value using the setter GetName() it does not work, and the compiler gives me
an error message "property Chars is ReadOnly? Does anyone know what is wrong in my code? Line 6 above


Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
End Sub
End Class

Public Class Class1
    Dim bs As Integer
    Public myBaby() As Class2
    Public myB As Class2
    Public Function ReSize(By

BC30506: Handles clause requires a WithEvents variable defined in the containing type or one of its


why do i get

BC30506: Handles clause requires a WithEvents variable defined in the containing type or one of its base types.

with the code

 below ..thanks


<form id="form1" runat="server">
               <asp:Button ID="Button1" runat="server" Text="Run Access" />
In your code behind:

Variable/Argument Type List

Hi I wish to restrict or supply my own list of (Variable/Argument) types to a rehosted Workflow Designer. Is this definatley not possible? I have read http://social.msdn.microsoft.com/Forums/en-US/wfprerelease/thread/53c91c81-02cf-4eab-b43f-c3d73a03c501, where it appears it is not. I find it difficult to believe I cannot get some sort of control of how these drop downs are populated. Could someone please confirm categorically that this is or is not possible. Regards DarremDarren

Re-signed my assembly, now I cannot deserialize objects saved before

I have a strange situation about object deserialization. My assemblies all had strong name but signed with different key pair file - I did not realize it is better to have all assemblies signed with the same key pair file before. And now I need to use one single key pair file to resign all assemblies for some other purpose. But After I did that, my program cannot deserialize objects saved by previous version of the assemblies anymore. Use XML object as example, In the XML file, the object is saved with this kind of information, <MyObject version="1" referenceType="MyObject, Assembly1, Version=, Culture=neutral, PublicKeyToken=f89a7ef07260c910"> <.... omited ... > </MyObject> The problem is that, the Assembly1 is resigned and the public key token of the running assembly does not match the token in the xml file. The same problem happens in my binary objects. Any gurus have some idea to deserialize objects after I resigned the assemblies? My program saved hundreds of objects, I hope there is some solution which will work with all of those objects.    

Timer job intiation error: SharePoint cannot deserialize an object of type

Hi All, when i run a timer job (One-Time timer) it has added it to Timer Job definitions in the Central Administration. I have checked the Log file in 12 hive and found the following error..... "SharePoint cannot deserialize an object of type xyz.xyzJob, xyzTimer, Version=, Culture=neutral, PublicKeyToken=<token> on this machine. This typically occurs because the assembly containing this type is not installed on this machine. In this case, this message can be safely ignored. Otherwise, the assembly needs to be installed on this machine in a location that can be discovered by the .NET Framework." The above error says that the assembly is not added.... but it has been already added to the GAC. Can anyone guide me about the issue and how to resolve that........?

How to make an array of class objects in Visual Basic

How can I make an array of objects in VB.net. Here is the requirement.Basically I have a class named hotel. I need to dynamically add customersto the hotel class using the Customer class. So basically if in the Hotelclass I can have an array of Customer objects that would be great. How can I do this in VB .net ? Public Class Hotel  ' I need an array of Customer objects. objCustomers End Class   Public Class Customer Private custId As Integer Private custName As String Private custAddress As String Private custCity As StringEnd Class Pseudo code:  Dim Hilton As Hotel = new Hotel()   Hilton.objCustomers(5) ' Declare an array of 5 customer objects   Hilton.objCustomers(0).CustId=1  Hilton.objCustomers(0).CustName="JoJo Smith"  Hilton.objCustomers(0).custAddress="122 Emory Lane"  Hilton.custCity="Merry More"  .  .  .  Hilton.objCustomers(4).CustId=1  Hilton.objCustomers(4).CustName="Ice Baby"  Hilton.objCustomers(4).custAddress="66 Domino Drive"  Hilton.custCity="Miami"    End While

array of objects

Hi , i want to store objects in a array, that is array of objects    

What type variable can I use to assign a possible Null or a string to?



I am converting a VB6 app to VB2008 and are having problems with replacing Variant variables.

I used Variant in cases where the data might be string or Null.

Is there a way I could check for Null and just set the string to zero lenght?

Any help would be appreciated.



Property Array of other Property Type



I am making use of two property classes, between them one is type is that of other property array type, it has the following code:

public class Entities
        private Property[] employeeInfo;
        public Property[] EmployeeInfo

SSIS 2008-Variable Expression Type Cast Syntax Error


Hi all members.

I need to ask for the following code. I need to convert the variable into a string.

"Select Distinct convert (int ,A.CustomerCategory) as AccountReceivableCategoryID, convert (varchar(40), B.Text) as AccountReceivableCategoryNameE
from Inkunde A , inpara B
where A.CustomerCategory= B.SearchItem
and B.Language1 = 'EN'
and B.ParameterName = 'CATEGORY'
and A.CustomerCategory = (DT_STR,200,1252) "+  @[User::CategoryID] +"
Order By A.CustomerCategory"

Kindly any member let me know, How to correctly use the Type Cast fucntion in variables

Thanks and Best Regards,


Type to Variable Error



I am getting this Error: is a type but is used as  a 'Variable'. Please let me know how to resolve this.

Thanks in advance.


How to create an array of VB.net objects from a VB .net class


I need to create an array of a class type. Populate the values in the class and then pass
the array to a subroutine. I havent figured out how to do this properly as I get a null
reference exception. Can someone show me how to create/instantiate the array of objects?
Here is a simple example with only one property named "_momentum". My actuall class has about
10 properties/variables in actuality

Public Class Torsion

 Dim _momentum As integer

 Public Property Momentum
            Return _momentum
    End Get
    Set(ByVal As Integer)
      _momentum = value
End Propterty

' Later in the code I try to create and object of the class

Dim x(0) As Torsion

Passing array or table data type


I need to pass many records with number of fields(i.e 5rows and 5 columns) in either array or table form to oracle for processing. Is it possible to pass array/table from asp.net pages? If no, any solutions for this? I have been thinking of passing it as string concatenated with delimiter and split it.  Seems like it is not appropriate as i have to pass 5 strings(5rows) Any better suggestion? Thanks in advance

Is it possible to pass an array of values, or a custom type as a parameter?


I am using a web service as a datasource.  When I create my report I would like to pass
a string array to this web method to retrieve the data for the report.  Is this possible or is there
a similar way to do this such as passing a custom type?





Variable types are strict, except for variables of type Object- SSIS 2008


Hi , I declared a user variable MINIODate  as string in package level and assigned this variable in an execute sql task 2008 , where my source is ado.net and sql command is Select CSTR(MIN(IODate) ) as MINIODate  from IOData ( This is source table available in MSAccess DB) , The above senario working fine in 2005. During the run time in 2008  i am getting the following error

[Execute SQL Task] Error: An error occurred while assigning a value to variable "MINIODate": "The type of the value being assigned to variable "User::MINIODate" differs from the current variable type. Variables may not change type during execution. Variable types are strict, except for variables of type Object.

Saving a complex custom type Variable to ModelItem


I am using a custom designer in a hosted workflow designer and want to use a complex custom type as a variable in a workflow.

I have been able to save the Variable, complete with values set in the designer Popup, in the ModelItem (to be able to save the workflow to a file) using:




Passing an array of objects back from a webservice

I can pass an object back from the webservice (e.g. a Person object).

I want to be able to pass back mutiple Person objects back from the webservice.

It does not look like you can pass a collection across from a webservice (if it is possible, please educate me on how).

Is it possible to pass back an array of objects? How would you do this?


lee franke
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend