允许客户为应用程序设置主题并发布供下载的最佳策略是什么?

发布于 2024-11-16 03:39:44 字数 302 浏览 4 评论 0原文

我正在 WPF (C# 4.0) 中构建一个应用程序,可以在互联网上免费下载。

如果用户想要自定义此应用程序(自定义图标、配色方案等)UI,他可以选择配置颜色、上传图标和徽标等资源、更改文本等,所有这些都可以通过网站完成。

我的问题是:允许用户进行这种自定义的最佳策略是什么,让服务器构建和打包应用程序,然后发布以便用户可以下载它。

目前,我正在使用用 powershell 编写的构建脚本来完成此任务,该脚本由网络服务器 (IIS) 使用我编写的自定义 HTTP 处理程序调用。构建结果随后通过电子邮件发送给用户,并附有下载应用程序的链接。

I'm building an application in WPF (C# 4.0) that can be downloaded online for free on the internet.

If the user wants to customize this app (custom icon, color scheme, etc.) UI, he will have the option to configure colors, upload resources like icons and logos, change texts, etc., all done through the website.

My question is: what would be the best strategy to allow users to do this kind of customization, having the server build and package the application and later publishing so the user can download it.

Currently I'm accomplishing this using build script written in powershell, that are invoked by the webserver (IIS) using a custom HTTP handler I wrote. The build result is later sent to the user by email, with a link to download the application.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

牵强ㄟ 2024-11-23 03:39:44

让他们上传工件等并将它们存储在服务器上(在数据库中,或其他什么位置)。

然后,当系统启动时,当应用程序最初启动时,将它们从数据库部署到应用程序中的适当位置。

如果他们要更改 CSS 颜色或其他内容,那么您可以从象征性地引用颜色等的 CSS 模板开始,然后重新生成 CSS。

这允许您分离可更改的组件,甚至还可以让您在现有更改保持不变的情况下升级应用程序。

重新启动时重新生成让您可以将它们全部视为静态资源,并且启动时间可以忽略不计。

您还可以根据需要重新生成。

Let them upload the artifacts et al and store them on the server (in a DB, or whatever).

Then when on system start, when the app initially launches, deploy them from the database in to the appropriate places within the application.

If they're changing CSS colors or whatever, then you can start with a CSS template that refers to the colors etc symbolically and regenerate the CSS.

This allows you to separate the changeable components, and also lets you even potentially upgrade the application while the existing changes remain in place.

Regenerate on restart lets you treat them all as if they're static resources, and odds are the start up time will be negligible.

You can also regenerate on demand.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文