In this article, you will learn how to add dynamically and upload multiple file with httppostedfilebase in mvc c#
<div class="row" id="fileupload_div">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<h6>Upload Your Documents</h6>
</div>
@foreach (var a in ViewBag.Upload1)
{
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<div class="form-group">
<label>@a.ItemArray[1]</label>
<input type="file" class="dropify" name="@a.ItemArray[0]" id="file_@i" required="" data-allowed-file-extensions="pdf png jpg jpeg" />
<input type="hidden" name="@a.ItemArray[0]" id="docname_@i" value="@a.ItemArray[0]" />
</div>
</div>
i++;
}
</div>
public ActionResult newregistration_form()
{
DataTable dt_Upload_Mst = Fetch from database;
if (dt_Upload_Mst.Rows.Count > 0)
{
ViewBag.Upload1 = dt_Upload_Mst.AsEnumerable().ToList();
}
return View();
}
<script type="text/javascript">
$("#btn_form_submit").click(function () {
var filelength = $('#fileupload_div').find('input[type="file"]').length;
// var formdata = new FormData();
for (var i = 1; i <= filelength; i++) {
var up_file = document.getElementById('file_' + i).files[0];
var doc_name = document.getElementById('docname_' + i).value;
fd.append('Uplaod_Files', up_file);
fd.append('docname', doc_name);
}
$.ajax({
url: '/home/FormSubmit',
type: "POST",
dataType: "JSON",
data: fd,
contentType: false,
processData: false,
success: function (result) {
}
})
});
</script>
public string NewRegistrationFormSubmit(HttpPostedFileBase[] Uplaod_Files, string[] docname)
{
string message = "";
try
{
if (Uplaod_Files != null)
{
// Your logic for saving files.
}
else
{
message = "Please upload document";
}
}
catch
{
}
return message;
}
how to add dynamically and upload multiple file with httppostedfilebase in mvc c#
public static byte[] CreateHTMLtoPDF(string HtmlString)
{
var htmlContent = String.Format(HtmlString);
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
htmlToPdf.Orientation = NReco.PdfGenerator.PageOrientation.Landscape;
//var Orientation = new NReco.PdfGenerator.HtmlToPdfConverter().Orientation=NReco.PdfGenerator.PageOrientation.Landscape;
htmlToPdf.Size = NReco.PdfGenerator.PageSize.A4;
//htmlToPdf.Zoom = -0.55f;
var pageMargin = new NReco.PdfGenerator.HtmlToPdfConverter().Margins;
//htmlToPdf.PageHeight= 210;
//htmlToPdf.PageWidth = 297;
pageMargin.Left = 25;
pageMargin.Right = 25;
pageMargin.Bottom = 25;
pageMargin.Top = 25;
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent);
byte[] bytes;
using (MemoryStream input = new MemoryStream(pdfBytes))
{
using (MemoryStream output = new MemoryStream())
{
string userpassword = "123";//Change it with User DOB Format dd-MM-yyyy
string Ownerpassword = "123";//Change it with whatever owner is wanted
PdfReader reader = new PdfReader(input);
PdfEncryptor.Encrypt(reader, output, true, userpassword, Ownerpassword, PdfWriter.ALLOW_SCREENREADERS);
bytes = output.ToArray();
//Response.ContentType = "application/pdf";
//Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.pdf");
//Response.Cache.SetCacheability(HttpCacheability.NoCache);
//Response.BinaryWrite(bytes);
//Response.End();
}
}
return bytes;
}
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SendOTP.aspx.cs" Inherits="Shoping_Cart.SendOTP" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>How to Send and Verify OTP On Mobile No Using C# In Asp.Net</title>
</head>
<body>
<form id="form1" runat="server">
<div>
Mobile No:
<asp:TextBox ID="txtMobileNo" runat="server" Width="200px"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Send OTP" />
<br />
<asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
</div>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Shoping_Cart
{
public partial class SendOTP : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
Random r = new Random();
string OTP = r.Next(1000, 9999).ToString();
//Send message
string Username = "youremail@domain.com";
string APIKey = "YourHash";
string SenderName = "MyName";
string Number = "981111111";
string Message = "OTP code is - " + OTP;
string URL = "http://api.minifycode.in/send/?username=" + Username + "&hash=" + APIKey + "&sender=" + SenderName + "&numbers=" + Number + "&message=" + Message;
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(URL);
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
string results = sr.ReadToEnd();
sr.Close();
Session["OTP"] = OTP;
//Redirect for varification
Response.Redirect("VerifyOTP.aspx");
}
catch (Exception ex)
{
lblMessage.Text = ex.Message.ToString();
}
}
}
}
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Verify.aspx.cs" Inherits="Cart.VerifyOTP" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Verify OTP</title>
</head>
<body>
<form id="form1" runat="server">
<div>
OTP:
<asp:TextBox ID="txtOTP" runat="server" Width="200px"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Verify OTP" />
<br />
<asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
</div>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Cart
{
public partial class OTP : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Session["OTP"].ToString() == txtOTP.Text)
{
lblMessage.Text = "You have enter correct OTP.";
Session["OTP"] = null;
}
else
{
lblMessage.Text = "Pleae enter correct OTP.";
}
}
}
}