gsimardnet / PowerQueryNet

Run M Language (Power Query Formula Language) from anywhere.
MIT License
189 stars 32 forks source link

Question around project design #1

Open beefarino opened 6 years ago

beefarino commented 6 years ago

First, I really appreciate you building this for everyone. I'm interested in taking this code and using it in an integration but the architecture of the project is a bit confusing. Can you elaborate a bit on why you've set this up as a remoting server and client? What about the Power Query libraries makes that a necessity?

gsimardnet commented 6 years ago

Hi,

The libraires the you find in the Service\lib folder come from PowerBi. I didn't develop them and have just created a "wrapper" that allows to call them. The purpose of the PowerQueryNet.Service was to make it more convenient when you create new projects. First you install the service in a central location (e.g. C:\Program Files (x86)\PowerQueryNet). Then you don't have to worry about bringing up every library with your project. You just need to have a reference to the PowerQueryNet.Client.dll.

That being said. If you feel another approach would be better, I am open to suggestions on this.

Thank you for your interest in the project.

beefarino commented 6 years ago

Perfect, that you for the insight. My interest is to package this as a PowerShell module, where the installation path is a bit different and usage is a bit less structured. In a nutshell I would want the entire thing in-process, which from what you're telling me isn't going to be a problem.

Let me see what we can put together on our end; I'll drop a link to the repo for the module here when we push it.

gsimardnet commented 6 years ago

A PowerShell module sounds like a very good idea. I am not aware of the requirements. I have never done a PowerShell module but I expect that you have a good starting point with my solution.

I have just released version 1.0.1 which now runs PowerQueryNet.Service as a Windows Service. I recommend you to update to that version.

activiz commented 6 years ago

@gsimardnet, is there a way I can use this in an Azure Web App?

gsimardnet commented 6 years ago

For the moment, the only option to run this under Azure is to install it on an Azure Virtual Machine. Then you could expose methods through a web service.

metamoof commented 6 years ago

Hey @beefarino, did you get the PowerShell module idea going? I’m definitely going to end up looking at it at some point, and this looks like an interesting place to get started...