You can take a look at Yield Prolog.
Yield Prolog uses yield
keyword in C# (and Python, and JavaScript) and custom Variable
class to simulate Prolog machine. This way, you get a Prolog API in your favourite language. You don’t need to connect your main language with P# or similiar projects.