Hi,
It will depend on the class of network and the analisys you intend to do on the network, it seems that the Graph API its aimed to "rooted" graphs or trees, but also it doesn't have a lot of methods thet easier the life with graphs: I don't see :
That means that you have to implement a node by node, edge by edge way to add nodes and edges to the graph
- Node.Degree (the total number of edges connected to a node)
- Node.OutDegree (the number of edges outbound of that node)
- Node.InDegree (the number of node inbound of that node)
- Node.InBoundEdges (edge collection of inbound edges)
- Node.OutBoudEdges (edge collection of outbound edges)
You will ned that for node connectivity analisys
The are lots of others thing one would expect to be included in a comprehensive Graph API, like node traversing algorithms implementation (A* search, Depth First search, Upstream search, etc).
IMO this is a very limited API, but it can (and it must) be extended to suit a general purpose network topology graph API, so if you can't afford to implement the needed extensions, then would be a better idea to grab some other graph API, personally I use quickgraph, but it's a personal choise.
Regards,
Gaston Nunez