Control and watch the state of Docker from my .NET application

we have a .NET Server project. One part of our Server solution should run in a Docker Container.
In our own Server Admin UI, I want to see the state of the running containers and read informations about the processor load, required memory, stop / restart the container.

Exists a .NET library, that connects to the Docker Engine?
Or do I have to use the Docker Engines REST service directly? Exists a documentation to the REST service?
Do you have any experience?

Thanks a lot,