Visual studio lightswitch上传和下载文件

时间:2015-05-27 06:30:23

标签: c# asp.net visual-studio-2013 lightswitch-2013

我正在关注本文,使用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错误。

由于

1 个答案:

答案 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>