0
votes

I have a code written in .net framework 4.6 which talks with a device (non iot, non IP) and reads data. I want this data to be sent to Azure IoT hub. so instead of using Azure IoT Device SDK in it, and running it as a simulated device, I want to create IoT Edge module, so lifecycle management of this app will come handy. But when I create new C# module in VS 2017, it forces me to use .net core 2.1. Is it possible to create Azure IoT Edge custom Module using .net Frameworks. and if yes, how ??

1

1 Answers

1
votes

When you create a module in VS or VS Code, they assume you want a 'traditional' (and cross platform) module. So .NET Core is the only choice (for the cross platform part). However, if you only want to use IoT Edge as a deployment/lifecycle mgmt vehicle, than you can build your own docker image independent of IoT Edge, yet deploy it through the IoT edge manifest. This link talks about containerizing a traditional .NET app, which you should then be able to deploy with IoT Edge (it just won't 'talk' to ioT Edge). We've done similar (non-iot-edge module) kind of things with stuff like influxdb, grafana, redis cache, etc. We deploy and manage their lifecycle with IoT Edge, but they don't really talk to/through IoT Edge.

Note that if you create a container as mentioned in the article, you will be limited to running IoT Edge on Windows with Windows containers.