20.19. Returning Typed Objects from ASP.NET
Problem
You want to return a typed object to Flash from a .NET back end.
Solution
Use an ASObject
and set the
ASType
property to match the name of the
ActionScript class as it is registered in Flash.
Discussion
Flash automatically attempts to convert any returned
ASObject
values into ActionScript datatypes. It
tries to find an ActionScript class that is registered within Flash
with the same name as the value of the
ASObject
’s
ASType
property. Therefore, you can return a typed
object to a Flash movie from a .NET back end by using an
ASObject
and setting its
ASType
property to the name of an ActionScript
class as it is registered in the Flash movie. Use the Add(
)
method to add properties to the
ASObject
. Here is an example of a .NET DLL
method that returns an ASObject
:
public FlashGateway.IO.ASObject getTypedObject( ) { // Create anASObject
. FlashGateway.IO.ASObject aso = new FlashGateway.IO.ASObject( ); // Add properties to the object. aso.Add("a", "eh"); aso.Add("b", "bee"); // Set theASType
of theASObject
to match the name // of a registered ActionScript class. aso.ASType = "MyClass"; // Return theASObject
. return aso; }
Here is an example snippet of ActionScript code that handles the
ASObject
that the preceding code returns:
function MyClass(a, b) { this.a = a; this.b = b; } MyClass.prototype.a; MyClass.prototype.b; // Add a method that just writes all the properties to the Output window. // This example simply illustrates that the
Get Actionscript Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.