mysql - 我导入了一个Excel文档,我通过foreach运行它,现在这个值需要导出到Web浏览器或 GridView 上的表格

标签 mysql asp.net c#-4.0

我导入了我的 Excel 文件,并通过 foreach 提取了我需要的列,所以现在我需要在网络浏览器的表格中显示这些值。

我尝试将其导出到 GridView ,但没有成功。

namespace WebApplication1.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            var doc = new cl23_ispEntities();
            var p = doc.archivebook.ToList();
            return View();
        }

        public ActionResult About()
        {

            try
            {
                var database = new cl23_ispEntities();
                //to do check
                //proceeding.filepathdetails = filepath;
                string fileName = "test.xlsx";
                        //insert data from xls to database
                        var pathxls = Path.Combine(Server.MapPath(string.Format("{0}", "~/uploads")), fileName);

                        string connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", pathxls);

                        string sheetName = "Sheet1";
                        var adapter = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}$]", sheetName), connectionString);

                        var ds = new DataSet();

                        adapter.Fill(ds, "ExcelTable");

                        DataTable dtable = ds.Tables["ExcelTable"];

                foreach (DataRow row in dtable.Rows.Cast<DataRow>())
                {
                    string barkod = row[3].ToString() + " " + row[4].ToString() + " " + row[1].ToString() + " " + row[6].ToString();

                    izuzimanje x = new izuzimanje();

                    x.barkod = barkod;
                    x.datum = DateTime.Now;
                    x.idstatus = 1;
                    x.tipzahtjeva = 1;

                    database.izuzimanje.Add(x);
                }

                database.SaveChanges();

                var dataexport = database.getIzuzimanje().ToList();

                return View();

            }

最佳答案

您可以将所需的所有 Excel 信息存储在一个对象中,例如“izuzimanjeList”,然后将其返回到 View ,如下所示:

List<Izuzimanje> izuzimanjeList = new List<Izuzimanje>();
 foreach (DataRow row in dtable.Rows.Cast<DataRow>())
                {
                    string barkod = row[3].ToString() + " " + row[4].ToString() + " " + row[1].ToString() + " " + row[6].ToString();

                    izuzimanje x = new izuzimanje();

                    x.barkod = barkod;
                    x.datum = DateTime.Now;
                    x.idstatus = 1;
                    x.tipzahtjeva = 1;

                    database.izuzimanje.Add(x);
                    izuzimanjeList.Add(x);
                }
                database.SaveChanges();

                var dataexport = database.getIzuzimanje().ToList();

                return View(izuzimanjeList);

“没关系,但是如何使用这个值并绑定(bind)到,例如我的关于页面部分的例子,如何将它们显示在浏览器的表格中或网站上可用的 Excel 文件中”

关于mysql - 我导入了一个Excel文档,我通过foreach运行它,现在这个值需要导出到Web浏览器或 GridView 上的表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56732585/

相关文章:

php - 在MySQL中,我可以在分配索引时在一张表中看到2个id

c# - C# 中用于视频的文件上传控件

ASP.NET 5 + Angular 2 路由(模板页面不重新加载)

c# - 在 C# 中以编程方式启动 HTTP 服务器?

jquery - 如何从 byte[] 中的 webmethod 下载 javascript 或 jquery 中的文件?

Mysql 在第一个匹配的字符上查找重复项

MySQL 合并 2 个具有相同 Id 值的表

mysql - SQL:无法使用子查询中父查询的引用使用 datediff 或 date_add 来过滤行

c# - 如何将byte []视为Int16 []?

wpf - 在 try catch c# 中处理 AccessViolation 异常