【问题标题】:How do you include many additional files with ClickOnce deployment?如何在 ClickOnce 部署中包含许多附加文件?
【发布时间】:2016-03-27 01:26:29
【问题描述】:

我正在尝试将我的第一个 WPF、C# 应用程序部署到许多桌面。对于案例数据库中的大多数记录,我想将其与数据库分开存储,并在按下按钮时显示(PDF 文件名等于 ID 号)。它是一个仅限搜索的程序,用户不会将任何数据保存回数据库。大约有 32,000 个 pdf,而且这个数字还会增长。当我尝试在项目中列出这些文件并使用 ClickOnce 部署 VS 时说我已经超过了最大清单大小。

有没有办法使用 ClickOnce 部署我的应用程序,然后使用某种类型的安装后命令复制文件?谢谢。

【问题讨论】:

    标签: c# wpf visual-studio deployment clickonce


    【解决方案1】:

    将文件添加到您的项目中。将构建操作标记为Content,将Copy to local directory 标记为Always。然后它将在您的部署中包含这些文件。

    您还可以检查“应用程序文件”对话框以查看它们是否存在。如果文件的文件扩展名是 XML 或其他表示数据的文件,您希望将选项从 Include(Data) 更改为 IncludeInclude(Required)。如果您将文件作为数据包含在内,则在部署后将其放入 DataDirectory。

    • 在解决方案资源管理器中选择一个数据文件。
    • 在“属性”窗口中,将“构建操作”属性更改为“内容”值

    2。将文件标记为数据文件

    • 在解决方案资源管理器中选择项目后,在“项目”菜单上单击“属性”。
    • 单击“发布”选项卡。
    • 单击“应用程序文件”按钮打开“应用程序文件”对话框。
    • 在“应用程序文件”对话框中,选择要标记为数据的文件。
    • 在“发布状态”字段中,从下拉列表中选择“数据文件”。

    3。将文件标记为先决条件

    • 在解决方案资源管理器中选择项目后,在“项目”菜单上单击“属性”。
    • 单击“发布”选项卡。
    • 单击“应用程序文件”按钮打开“应用程序文件”对话框。
    • 在“应用程序文件”对话框中,选择您希望标记为先决条件的应用程序程序集(.dll 文件)。请注意,您的应用程序必须引用应用程序程序集才能显示在列表中。
    • 在发布状态字段中,从下拉列表中选择先决条件。

    Source: MSDN - How to: Specify Which Files Are Published by ClickOnce

    【讨论】:

    • 您是否曾经对 32,000 个文件进行过此操作?我确实尝试过这个,但是它让 VS 挂了很长时间,然后有一条消息说我的清单中超过了最大值,这让我觉得以这种方式包含的文件太多了。我希望这能奏效,因为它肯定会让生活变得轻松。
    • 我相信这些说明仅适用于一次添加一个文件。这对于一些文件来说是可以的,但对于许多文件来说它变得难以处理。无法在“发布/应用程序文件...”对话框中选择多个文件并将它们全部标记为“数据”(例如)。 AFAIK 的唯一方法是在文本编辑器中编辑应用程序项目文件,并为要发布的文件名显式生成 xml。不幸的是,如果您超出清单限制,这将无济于事,但如果您想添加数百个文件,它确实有效。
    猜你喜欢
    • 1970-01-01
    • 2011-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-15
    相关资源
    最近更新 更多