Is there a NuGet equivalent for deploying content to end users?

后端 未结 2 1207
再見小時候
再見小時候 2021-02-15 16:09

I have a c# application and I am mainly concerned with pushing out automatic updates to clients running my software. These updates can be anything from a new / patched dll to ne

2条回答
  •  一个人的身影
    2021-02-15 16:28

    There are a few different ones you can check out.

    This one has been talked about/around for awhile, but I haven't heard any news of wether or not it's actually ready to be used yet

    https://github.com/Squirrel/Squirrel.Windows

    https://www.nuget.org/packages/NuSelfUpdate/

    https://www.nuget.org/packages/NuGetUpdate/

    Would recommend this one, as last time I opened a ticket he addressed it almost immediately.

    https://www.nuget.org/packages/Sidewinder.Core/

    None of them will be a 100% drop in solution because application updating is one of those things that's hard to generalize.

    For me what I end up doing is one of two things

    1) Use http://www.myget.org to host my updates, and roll my own system that downloads/restarts/updates things.

    2) Roll my own with a component index on AWS S3. The xml lists the components and points to the url to get each update. From there your application decides how/when to stop/update/restart it.

    Also, if I'm updating the main application, generally how I do it(If the application is already running)

    1. Check for an update.
    2. If there is an update, download it.
    3. On start of the application, check for the update file locally.
    4. If it exists, install it silently

    If the application isn't running I do an update check/download/install on start(but that's only when it's critical that people are running the absolute latest).

    In the end though, none of those frameworks will 100% fit your needs, because no scenario is the same, hopefully they get you most of the way though.

提交回复
热议问题