c# - 如何在松鼠窗口中检索 FutureReleaseEntry 发行说明?
问题描述
嗨,我开始在我的应用程序中使用 squirrel,我可以从网络位置顺利更新我的应用程序(我放置设置、版本的位置)
我想获得未来版本的发行说明。我可以获得未来版本的版本号,但是我无法获得它的发行说明。
这是我的代码
using (var mgr = new UpdateManager(@"http://mysamplewebsite.com/version/"))
{
var updateInfo = await mgr.CheckForUpdate();
if (updateInfo.ReleasesToApply.Any())
{
string futureVersion = updateInfo.FutureReleaseEntry.Version.ToString();
//GOOD
MessageBox.Show(futureVersion);
var futureReleaseNotesLocalDirectory = updateInfo.FutureReleaseEntry.GetReleaseNotes(@"C:\Users\source\repos\UpdateAppTesting\Releases");
//GOOD I can even get the release notes in my local directory
MessageBox.Show(futureReleaseNotesLocalDirectory);
//giving me an error of URI FORMATs are not supported
var futureReleaseNotesWEBLocation = updateInfo.FutureReleaseEntry.GetReleaseNotes(@"http://mysamplewebsite.com/version/");
MessageBox.Show(futureReleaseNotesWEBLocation);
}
else
{
MessageBox.Show("No updates detected.");
}
}
虽然我可以通过目录获取更新的发行说明,但我无法通过 Web url 位置获取发行说明。
Web url 位置有效,因为我可以获得未来版本的版本号。但是当我试图获取发行说明时,它给了我一个 不支持 URI FORMATs的错误
希望有人可以帮助我,因为发布说明对于用户了解应用程序的新更新/更改是非常重要的。谢谢
解决方案
TL;博士
updateInfo.FutureReleaseEntry.GetReleaseNotes(updateInfo.PackageDirectory)
首先,您必须使用
mgr.DownloadReleases(updateInfo.ReleasesToApply)
或者
mgr.UpdateApp()
nuget 包存储在packages
App 根目录下的文件夹中。
您可以像这样访问该文件夹
updateInfo.PackageDirectory
并获取发行说明
updateInfo.FutureReleaseEntry.GetReleaseNotes(updateInfo.PackageDirectory)
但这意味着您必须先下载整个版本才能访问发行说明
推荐阅读
- android - 如何在 Android Switch 中为阴影着色?
- python - Python 代码在终端上工作,但不在 Web 服务器上
- typescript - 有没有办法在不使用函数的情况下推断泛型类型
- angular - Graphql 仍处于待处理状态(Angular)
- python - df.compare() 如何使用 align_axis=1 更改自身/其他标签?
- react-native - 在反应原生地图中使用 Geolocation.getCurrentPosition 时应用程序崩溃
- hbase - 由于 ZK 中 /hbase/hbaseid 的 NoNode,使用 docker 0.6.0 的带有 Bigtable + Elastic 搜索后端的 Janusgraph 失败
- solidity - 从 Keeper 更改合约 B 的变量状态
- django - 使用 if 语句检查内容类型以确定要执行的操作
- pandas - 带有计数器的子图,如传说