My first reaction to the question is that making directory entries map to resources is not a great idea, mainly for performance/scalability but also the content editor UX may not be optimum. That many TVs also introduces additional performance questions, especially if MediaSource paths have to be processed, category permissions have to be addressed, etc. All of this is hypothetical though, since I'm not sure what requirements you have.
Without knowing much more, my gut feeling would be to go the CMP / snippets approach. Alternately, you could explore the idea of a Custom Resource Class, which would allow you to combine what would normally be your CMP into the Resource Edit screen. In either case, the Resource would be the endpoint for all requests to that directory (a plugin or rewrite rule would handle mapping requests to it).
Before deciding on the best approach, also consider where and how the data in the directory will be used, how you would develop it and how it would affect performance. E.g.
- Do you need to aggregate directory entry data
- Search?
- Do you need to incorporate permissions?
There's a lot to consider, but it will be time well spent.