views:

34

answers:

1

Has anyone experience using rowlex generated classes within a silverlight application? Since we can't expose the classes as a RIA service, what would be the best solution to use them? Wouldn't it be nice if linqtordf and rowlex.net will be merged into a same solution...

Thx, Bart

+1  A: 

ROWLEX is created primarily to browse and manipulate RDF graphs in memory. The RDF graph itself is represented by an instance of the RdfDocument class (e.g., you can load an RDF file from disk by calling new RdfDocument(@"C:\myRdfGraph.rdf");. The instances of the ROWLEX generated classes (aka ROWLEX proxy classes) represent a node in the graph. These proxy instances hold direct reference to their RdfDocument. Therefore, you may execute ROWLEX both on the server and on the client side, as long as keep the RdfDocument instance the proxy class instances in the same AppDomain. Or in other words, keep the RdfDocument and its proxy classes on the same end of the wire.

If you wish to process RDF on the client side with Silverlight, it should not be a problem. Send the RDF graph over the wire as an RDF/XML document, load the graph on the client side into the RdfDocument and you are free to browse/manipulate it with the instances of your proxy classes.

You might want to read my answer on this question, too, for deeper understanding what goes on under the hood.

ROWLEX Admin
I thought this could be a good way of working. But the generated proxy classes can't be referenced in a silverlight application. Maybe it isn't difficult to generate silverlight-ready dll's as wel.Nevertheless, interesting discussion going on symantic overflow.
Bart
Hmmm... I have absolutely zero experience with Silverlight. The generated dll-s are compatible with .NET runtime 2.0 which is certainly OK to use until .NET3.5. About .NET4.0 I have no clue. Is there anything specific in Silverlight that rejects referencing an ordinary .NET2.0 assembly?
ROWLEX Admin
I don't think v2.0 is the problem...The assemblies that Silverlight uses (System.dll, mscorlib.dll etc.) are not the same as the basic .NET assemblies although many of the functions exist in both. You could say that the Silverlight assemblies are a slim-down version of the full .NET assemblies, but are almost identical in the functions both expose.So I thing the rowlex dll's should be generated especially for silverlight...Thx, Bart
Bart