首页 > 解决方案 > 如何为 ASP.NET Core / Angular Web 应用程序创建安装程序?

问题描述

我们创建了一个“本地”网络应用程序,我的任务是为该应用程序创建一个安装程序,以编程方式允许用户在 SQLite 或 SQL Server 实现之间进行选择。我对如何做到这一点零线索,也没有找到任何有明确方向的好文章。

我所做的就是在我的文件中编写以下代码,以在我的Startup.cs文件中的两个连接字符串之间进行选择appsettings.json。有谁知道创建/实现安装程序的最佳方法?这种事情有开源解决方案吗?我对这个感到很失落......

protected virtual IServiceCollection ConfigureDbContext(IServiceCollection services)
        {
            var isSqlServerConnection = Configuration.GetValue<bool>("UseSql");

            if (isSqlServerConnection)
            {
                services.AddDbContext<SecurityDbContext>(options =>
                options.UseSqlServer(Configuration.GetConnectionString("Default")).UseQueryTrackingBehavior(QueryTrackingBehavior.TrackAll),
                ServiceLifetime.Transient);

                services.AddDbContext<StorageContext>(options =>
                options.UseSqlite(Configuration.GetConnectionString("Default")).UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking),
                ServiceLifetime.Transient);
            }
            else
            {
                services.AddDbContext<SecurityDbContext>(options =>
                options.UseSqlite(Configuration.GetConnectionString("Sqlite")).UseQueryTrackingBehavior(QueryTrackingBehavior.TrackAll),
                ServiceLifetime.Transient);

                services.AddDbContext<StorageContext>(options =>
                options.UseSqlite(Configuration.GetConnectionString("Sqlite")).UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking)
             , ServiceLifetime.Transient);
            }

            return services;
        }

标签: c#.netsql-serverdeployment

解决方案


使用 Visual Studio 创建安装程序

  1. 关闭除一个 Visual Studio 实例之外的所有实例。
  2. 在正在运行的实例中,访问菜单工具->扩展和更新。
  3. 在该对话框中,选择 Online->Visual Studio Marketplace->Tools->Setup & Deployment。
  4. 从出现的列表中,选择 Microsoft Visual Studio 2017 安装程序项目。
  5. 安装后,关闭并重新启动 Visual Studio。转到 File->New Project 并搜索单词 Installer。如果您看到如下所示的列表,您将知道您安装了正确的模板:

与示例

  1. 使用安装项目创建安装程序以满足您的需求。您可以轻松地在安装程序上创建一个页面,用户选择 SQLite 或 SQL Server 作为支持的数据。

以下是有关创建安装程序和您需要的扩展的一些附加资源。根据您的 Visual Studio 版本,您可能需要另一个版本的扩展。

https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects

https://codeteddy.com/2016/04/04/creating-an-msi-package-for-c-windows-application-using-a-visual-studio-setup-project/

https://www.add-in-express.com/docs/net-msi-setup-project.php


推荐阅读