微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Angular 11 中导入 CSV 文件并将数据存储在数据库中,即 ASP.NET MVC?

如何解决如何在 Angular 11 中导入 CSV 文件并将数据存储在数据库中,即 ASP.NET MVC?

<div class="container col-md-4 px-3">
    <input type="file" class="form-control-file" id="inputBulkTUpload">
    <br><br>
    <button type="submit" class="btn btn-info shadow" (click)="onAddBulkdata()">submit</button>
    <br><br>                 
</div>

当我点击“提交”按钮时,我想将数据存储在我的表格中。

解决方法

<div>
   <span class="drag-box-highlight" [ngClass]="CSVfile !== '' ? 'file-align' : 'file-none'">
   {{CSVfile}} <i class="material-icons">done</i>
   </span>
   <input type="file" id="uploadFiles" #uploadFiles (change)="uploadFile($event)" />
   <button mat-raised-button type="button" color="primary" [ngClass]="{'component-disabled' : CSVfile === ''}"
   (click)="importProvidersDetails()" [mat-dialog-close]="true" cdkFocusInitial>{{'BUTTON_IMPORT' | translate: lang}}</button>
</div>

  public uploadableFile: any = '';
  public CSVfile: any = '';
  filePath: string;
  fileName: any;
  uploadStatus = true;
  dataSource;
  isChecked = false;


validateFile(file: any) {
    if (!file || !file.name) {
      return false;
    }
    let filename = file.name;
    filename = filename.split('.');
    const filetype = filename.pop();
    if (filetype.toLowerCase() === 'csv') {
      return true;
    } else {
      return false;
    }
  }

  uploadFile(e: any) {
    if (e && e.target && e.target.files && e.target.files.length) {
      const fileName = e.target.files[0].name.split('.');
      if (fileName && fileName[1].toLowerCase() !== 'csv') {
        this.notify.error(this.translation.translate('ERROR_CHOOSE_CSV'));
      } else {
        if (this.validateFile(e.target.files[0])) {
          this.uploadableFile = e.target.files[0];
          this.CSVfile = e.target.files[0].name;
          this.uploadFiles.nativeElement.value = '';
          return;
        }
      }
    }
    this.CSVfile = '';
  }

  importProvidersDetails() {
    console.log(this.data.providerId)
    const file = new FormData();
    file.append('file',this.uploadableFile);

    this.shippingService.importProvidersDetails(this.data.providerId,file).subscribe((response: any) => {
      this.notify.success('Provider Details imported successfully');
      this.uploadStatus = true;
      this.dataSource = '';
      this.CSVfile = '';
      this.isChecked = false;
      this.uploadableFile = '';
      
    },(error: any) => {
      console.log(error)
    });
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。