我正在关注本文,使用silverlight子窗口上传和下载文件。 http://gyansangrah.com/ArticleContent.aspx?ID=upload_and_download_file_in_lightswitch_2011
我正在使用2013年。我在lsxtproj文件中引用了我的download.aspx页面< _BuildFile Include =“Server \ Upload \ Download.aspx”>。
我可以上传文件没有问题但是当我下载它时我得到了一个http 404错误。 它正试图寻找这个URL。 http://localhost:54853/Client/Download.aspx?id=6 请求的网址:/Client/Download.aspx
我在服务器项目中有我的Download.aspx文件,并在我的lsxtproj文件中引用它。
我不知道为什么在尝试使用命令按钮下载文件时会抛出http 404错误。
由于
答案 0 :(得分:0)
我通过更改Download_Execute()函数解决了这个问题;
partial void Download_Execute()
{
int fileId = this.FileCollection.SelectedItem.Id;
Uri hostUri = null;
Dispatchers.Main.Invoke(() =>
{
hostUri = System.Windows.Application.Current.Host.Source;
});
Dispatchers.Main.Invoke(() =>
{
UriBuilder myUri = new UriBuilder(hostUri.Scheme, hostUri.Host, hostUri.Port, "Download.aspx",
"?Id=" + fileId);
HtmlPage.Window.Navigate(myUri.Uri, "_new");
});
}
并更改了lsxtproj文件中的短语;
<_BuildFile Include="Download.aspx">
<SubFolder>
</SubFolder>
<PublishType>
</PublishType>
</_BuildFile>