Atlas client-server binding issue (getter)

A

Amie

Hi,

I have an atlas related question..

I have a web form that submits the information to a web service
method, and it's done thru Atlas by binding the web methods to client
functions.

It seems to be working fine, except for when the class has a property
with only getter (no setter), it freaks out, and returns the following
error:

new Sys.Net.MethodRequestError("The type \'Project\' does not have a
public property or field named

\'StartDateDisplay\'"," at
Microsoft.Web.Script.Serialization.ObjectConverter.AssignToPropertyOrField

(Object propertyValue, Object o, String memberName)\r\n at
Microsoft.Web.Script.Serialization.ObjectConverter

..ConvertDictionaryToObject(IDictionary`2 dictionary, Type type)\r\n
at Microsoft.Web.Script.Serialization

..ObjectConverter.ConvertObjectToTypeInternal(Object o, Type type)\r
\n at Microsoft.Web.Script.Serialization

..ObjectConverter.ConvertObjectToType(Object o, Type type)\r\n at
Microsoft.Web.Services.WebServiceMethodData

..StrongTypeParameters(IDictionary`2 rawParams)\r\n at
Microsoft.Web.Services.WebServiceMethodData.CallMethodFromRawParams

(Object target, IDictionary`2 parameters)\r\n at
Microsoft.Web.Services.RestHandler.ProcessRequest

(HttpContext context)","System.ArgumentException")

The Project class has a property called "StartDateDisplay" but it's a
getter. Is Atlas unable to map a client object to a server object if
the server class def contains a property with only getter? Is there a
workaround to this?

I have other classes with getter properties, so I'd like to get it
working as is without removing them.

Thanks in advance,
Amie
 
M

marss

Amie said:
Hi,

I have an atlas related question..

I have a web form that submits the information to a web service
method, and it's done thru Atlas by binding the web methods to client
functions.

It seems to be working fine, except for when the class has a property
with only getter (no setter), it freaks out, and returns the following
error:

new Sys.Net.MethodRequestError("The type \'Project\' does not have a
public property or field named

\'StartDateDisplay\'"," at
Microsoft.Web.Script.Serialization.ObjectConverter.AssignToPropertyOrField

(Object propertyValue, Object o, String memberName)\r\n at
Microsoft.Web.Script.Serialization.ObjectConverter

Hi, I guess a problem is not in Atlas. You trying to serialize an
object of the class which has a property that can not be serialized.
Try to explicitly exclude this property from the serialization.

[Serializable]
public class Project
{
public bool NormalProperty
{
get { ... }
set { ... }
}

[NonSerialized]
public string StartDateDisplay
{
get { ... }
}
}
 
A

Amie

Thanks for the response!

I couldn't attach the attribute [Nonserialized] for the property as
it's allowed for field declaration only.

I got around by having an empty setter.. Probably not a best solution,
but it works.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,581
Members
45,056
Latest member
GlycogenSupporthealth

Latest Threads

Top