2

物理ディレクトリからファイルを読み取り、ビューにリンクとして表示する必要があります。ファイルへのリンクを取得していますが、リンクをクリックしてもファイルがダウンロードされません。以下はコードです。助けてください。リンクにカーソルを合わせると、ファイルが file:///c:/Test/Test.doc として表示されますが、リンクをクリックしてもファイルはダウンロードされません。

  public class Documents: Controller
  {

    public ActionResult Documents()
    {
        return View();
    }

    //Read the files from directory and display
    [HttpGet]
    public JsonResult GetDocumentlinks()
    {
        string data = "";
            foreach (string s in Directory.GetFiles(@"C:/Test"))
                {

                    var uri = new Uri(s);
                    var converted = uri.AbsoluteUri;
                    data = "</br>" + data + "<a href='" + converted + "'>" + Path.GetFileName(s)      + " </a> </br></br>";

                }

        return Json(data, JsonRequestBehavior.AllowGet);
    }

   }




   <div id="links"></div>
   $(document).ready(function () {

   LoadTrainingDocsGrid();
   });

   function LoadTrainingDocsGrid()
   {
   $.ajax({
     cache: false,
     url: '../Document/GetDocumentlinks/',
     dataType: 'json',
     type: 'GET',
     contentType: 'application/json; charset=utf-8',
     success: function (data) {
         debugger;
         $('#links').html(data);
     }
     });
      }
4

1 に答える 1

0

次の投稿では、あなたが抱えている問題について詳しく説明しています。

物理フォルダーと仮想フォルダーの関係と、現在レンダリングしているリンク (物理ファイル リンク) を適切なリンク (仮想フォルダー内のファイルを参照する http:// url) に変更して、目的の動作を取得する方法について説明します。為に。

それが役立つことを願っています。

于 2012-12-22T20:49:34.650 に答える