[This is preliminary documentation and is subject to change.]

Defines a contract required to instantiate an API wrapper type and access its properties and acts as an anchor for the extension methods found in the FacebookObjectExtensions class.

Namespace:  Facebook.Api
Assembly:  Facebook (in Facebook.dll) Version: 0.2009.3.23 (0.2009.3.23)

Syntax

C#
public interface IFacebookObject
Visual Basic (Declaration)
Public Interface IFacebookObject
Visual C++
public interface class IFacebookObject

Remarks

By using the extension methods defined in FacebookObjectExtensions, IFacebookObject implementations allow the XML responses from Facebook API methods to be easily and economically deserialized.

The properties of a given IFacebookObject are queried on demand, so the first time the get accessor of a property is accessed, an XPath query will be executed, and the result is stored in the InnerDictionary object for subsequent access.

There are methods in FacebookObjectExtensions that support loading child IFacebookObject implementations, so a theoretically infinite hierarchy of parent/child objects is supported.

Query<(Of <(TValue>)>)(String) requires that the type parameter implement IFacebookObject, which allows developers to create their own custom IFacebookObject implementions that can be returned for FQL queries.

See Also

IFacebookObject Members
Facebook.Api Namespace
Facebook.Api..::.FacebookObjectBase
Facebook.Api..::.FacebookObjectExtensions
FqlController..::.Query<(Of <(TValue>)>)(String)