1

私は角2のWebカメラAPI(.netコア)です。私は剣道のアップロードを使用してWeb APIにファイルをアップロードすることはできません。ここで角度2の剣道UIアップロードコンポーネント - アップロードできません

は私のサンプルコードです: HTML:

<kendo-upload [saveUrl]="uploadSaveUrl" 
          [removeUrl]="uploadRemoveUrl" 
          (upload)="uploadEventHandler($event)"> 
    </kendo-upload> 

アップロードイベントハンドラ

 uploadEventHandler(e: UploadEvent) 
    { 
     this.fs.uploadFile(e.files).subscribe(result => { console.log('result', result); }); 

    } 

アップロードサービス:

uploadFile(file: any) 
{ 

    const baseUrl = this.basePath + '/api/Common/UploadFile'; 

    return this.dah.post(baseUrl, file); 
} 

ウェブAPI:

[HttpPost("UploadFile")] 
    public string UploadFile(IList<IFormFile> files) 
    { 

     return ""; 
    } 

ここで、私は、API内のファイルの一覧を取得することはできません。作業コードはありますか?あなたは「this.dah」は何

答えて

0

を言いませんでしたが、剣道アップロード「uploadFiles()」メソッドを使用するときは、Web-APIサービスに[FromForm]属性を経由してファイルにアクセスすることができます

[HttpPost("UploadFile")] 
public string UploadFile([FromForm]ICollection<IFormFile> files) 
{ 
    return ""; 
} 
1
<kendo-upload #myUpload="kendoUpload" [autoUpload]="false" [saveUrl]="'/api/Attachment/PostFormData'" (upload)="uploadEventHandler($event)"> </kendo-upload> 

component.ts

ploadEventHandler(e: UploadEvent) { 
     console.log(e.files[0].uid); 
     // you can send extra data here 
     e.data = { 
      attachmentType: this.typList.filter(x=>x.Uid == e.files[0].uid)[0].type 
     }; 
    } 

Web APIをコントローラ

+0

私たちはapplicationIdのように他のパラメータをどのように送るのでしょうか?そのためにレコードを作成するときよりも、このファイルをそのapplicationIdに関連付けることができますか? –

+0

他のパラメータを送信しています。 e.data = { attachmentType:this.typList.filter(x => x.Uid == e.files [0] .uid)[0]。タイプ }; // attachmentType is formdata 受信中: - 文字列_property = System.Web.HttpContext.Current.Request.Form ["attachmentType"]; // c# –

関連する問題