Tag: asp.net

将gridview导出到Excel时,阿拉伯字符无法识别

当我将gridviews导出到Excel时,我遇到了识别阿拉伯字符的问题。 阿拉伯语文本显示为“Ø®Ù​​”اØμ“,但不能识别阿拉伯文数据以及阿拉伯语网格视图标题 我正在使用下面的代码导出到Excel在同一个Web应用程序中的许多GridView,它工作正常,它承认阿拉伯文本 protected void BtnExportDateSearch_Click(object sender, EventArgs e) { Response.Clear(); Response.AddHeader("content-disposition", "attachment;filename=ExportDataDateSearch.xls"); HttpContext.Current.Response.Charset = "UTF-8"; HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8; Response.ContentType = "application/vnd.xls"; StringWriter StringWriter = new System.IO.StringWriter(); HtmlTextWriter HtmlTextWriter = new HtmlTextWriter(StringWriter); GridView1.RenderControl(HtmlTextWriter); Response.Write(StringWriter.ToString()); Response.End(); } 我的情况之间的区别,以防万一我从通常的select查询检索到的数据到gridview中,它识别阿拉伯文本,但在我使用unpivot和CASE语句的情况下,在asp页面的gridview上查看阿拉伯语但是当我将它导出为ex​​cel时,阿拉伯文本无法识别。 这是存储过程,这是我gridview的数据源: ALTER PROCEDURE [dbo].[UnpivotApprovedPalms] @StartDateTime datetime2(7), @EndDateTime datetime2(7) AS BEGIN SELECT FarmID, CASE PalmsName WHEN 'kalas' THEN N'خلاص' […]

“进程无法访问该文件,因为它正在被另一个进程使用”

我需要将一个CSVfile upload到Azure服务器上的ASP.NET应用程序。 虽然它在我的本地机器上正常工作,但是在上传到服务器时会引发以下错误: “进程无法访问文件”C:\ inetpub \ wwwroot \ ImportFiles \ 9_11.csv“,因为它正在被另一个进程使用” 我的代码: string fileName = DateTime.Now.ToString().Replace(':', '_').Replace('/', '_').Replace(' ', '_') + Convert.ToString((new Random()).Next(0, 999) * (new Random()).Next(0, 999)); string path = Server.MapPath("ImportFiles") + "\\" + fileName + "" + FileImport.FileName.Substring(FileImport.FileName.IndexOf('.')); FileImport.SaveAs(path); string pathforSeconStream = path; try { Response.Write("<script> alert('In Try Block');</script>"); bool flag = true; […]

使用EPplus将文本添加到Excel

我有一个主目录,其中包含许多子目录。 在每个子目录中都会有图像。 我设法将每个子目录中的图像导出到Excel工作簿中的每个Excel电子表格中。 例如,如果我有10个子目录,将会有1个excel工作簿和10个excel电子表格,每个电子表格中会有每个子目录的图像。 我现在要完成的是如果在任何子目录中没有图像,导出到Excel电子表格的子目录将是空白的。 我想添加“找不到图像”作为文本的空白Excel电子表格。 这是我曾经试过的: foreach (string subdir in filesindirectory) { string[] splitter = subdir.Split('\\'); string folderName = splitter[splitter.Length – 1]; ExcelWorksheet ws = package.Workbook.Worksheets.Add("Worksheet-" + folderName); //create new worksheet ImageCount = 0; if (Directory.GetFiles(subdir).Length == 0) { ws.Cells["J9:L10"].Merge = true; ws.Cells["J9:L10"].Style.VerticalAlignment = ExcelVerticalAlignment.Top; ws.Cells["J9:L10"].Value = "No chart to display"; ws.Cells["J9:L10"].Style.Font.Size = 16; […]

使用EPPlus对Excel范围进行Excel时间validation

我想要使​​用EPPlus在Excel中validation列的时间范围,如下午1:00到11:00。 时间必须是“hh:mm AM / PM”格式。 我解决了这个问题。 这里是代码: var validationEndTime = workSheet.DataValidations.AddTimeValidation("H:H"); validationEndTime.ShowInputMessage = true; validationEndTime.Prompt = "Add end time in hh:mm AM/PM format as example 9:00 AM or 12:30 PM"; validationEndTime.ErrorStyle = ExcelDataValidationWarningStyle.stop; validationEndTime.ShowErrorMessage = true; validationEndTime.Error = "Insert valid time"; validationStartDate.Operator = ExcelDataValidationOperator.between; var timeEnd = validationStartDate.Formula.Value; timeEnd.Hour = 00; timeEnd.Minute = 00; var […]

在C#中生成Excel

我有Excel生成错误。 检索具有CLSID {00024500-0000-0000-C000-000000000046}的组件的COM类工厂失败,原因如下:80040154类未注册(exception来自HRESULT:0x80040154(REGDB_E_CLASSNOTREG))。 它在我的本地机器上正常工作。

ASP.NET MVC – 将Excel内容保存到数据库

我想添加一个function,我的Web应用程序,用户可以上传一个Excel文件,可能看起来像这样(我将提供一个Excel文件模板,用户可以填写): Name Address Phone John California 000-111 Matt Seattle 000-222 … 并将标题Name-Address-Phone后的每一行传递给我的注册控制器或服务。 现在我的问题是什么是最好的方式(用户体验,速度是重要的)来做到这一点? 我不是在寻找一个完整的工作代码,我只是在寻求速度方面最有效的方法。

两个文件是二进制相同的,但performance出不同的行为

我发布标签asp.net和excel,因为这是我的问题的起源,但我不知道这是正确的地方 – 最终,我的问题是,我有两个文件(由ASP.Net应用程序)是基于二进制文件比较使用相同 fc /B A.xls B.xls 但是,它们performance出不同的行为:第一个在Excel中正常打开; 第二个不是。 然后,我得出结论,除了FC实用程序检查的文件外,还有一些不同之处。 我试着把这两个文件发给一个朋友来请求他的帮助,但是发现当我这样做的时候,问题文件被“固定”了。 事实上,如果我对这个文件做任何事情,它都会被“固定”。 通过修正,我的意思是,它在Excel中打开罚款。 例如,如果我压缩它,然后从压缩包中提取它,这是没有问题的。 如果我用Notepad ++和“另存为”打开,那就好了。 与写字板一样。 使用普通的旧记事本不能解决它。 所以,显然,这两个文件有一些差异,我失踪了。 我不确定是否有任何问题要求人们访问一个随机的网站,但如果你想看到一个行为的例子,我已经创build了一个最小的页面来复制问题在http://rodj.me/ ExcelTest 点击“MinimalHtml.aspx”的链接,该应用程序将在页面载入中使用以下内容提供基于HTML的xls文件: protected void Page_Load(object sender, EventArgs e) { Response.ContentType = "application/vnd.ms-excel"; Response.AddHeader("Content-Disposition", "filename=MinimalHtml.xls"); } 根据您的浏览器和浏览器设置(我的testing已经在Chrome中),您可能会打开一个空白页面的Excel。 无论如何,你应该得到文件MinimalHtml.xls下载。 这是一个纯文本文件。 你会发现这个文件不会在Excel中打开。 但是,如果您压缩文件,然后从zip中提取,它将打开。 我很好奇在做FC比较时我错过了什么其他的文件差异,但最终,我需要纠正ASP.Net应用程序正确地为HTML文件提供服务。 有趣的是,如果我创build电子表格的XML版本,它会下载/打开罚款。 这就是“MinimalXml.aspx”链接的作用。 任何人都可以帮助1)如何弄清楚两个文件的不同之处; 或2)ASP.Net应用程序必须改变它以正确地提供文件?

在Excel中导出GridView数据时遇到困难C#

在excel中导出gridview数据时遇到问题。 它是导出整个页面而不是Gridview数据。 我的代码如下: Response.Clear(); Response.Buffer = true; Response.ClearContent(); Response.ClearHeaders(); Response.Charset = ""; StringWriter strwritter = new StringWriter(); HtmlTextWriter htmlwritter = new HtmlTextWriter(strwritter); Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "application/ms-excel"; Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", "DSR"+DateTime.Now.ToString("dd-MM-yyyy")+".xls")); GridView1.GridLines = GridLines.Both; GridView1.HeaderStyle.Font.Bold = true; GridView1.RenderControl(htmlwritter); Response.Write(strwritter.ToString()); Response.End();

使用C#读取ASP.net中的excel文件时,访问被拒绝

我正在使用ASP.net(C#)编写Web应用程序。 我有一个excel文件在服务器上,我想读。 当我尝试使用下面的代码读取这个Excel文件时,它会抛出exception。 我已经为服务器上的用户(IIS用户)提供了完整的权限,用于存放excel文件的特定文件夹。 阅读逻辑: Excel.Application xlApp = null; Excel.Workbook xlWorkbook = null; Excel._Worksheet xlWorksheet = null; Excel.Range range = null; xlApp = new Excel.Application(); xlWorkbook = xlApp.Workbooks.Open("C:\inetpub\wwwroot\Uploads\data.xls); xlWorksheet = (Excel.Worksheet)xlWorkbook.Worksheets.get_Item(sheetName); range = xlWorksheet.get_Range("A1", "B5"); 例外: 检索具有CLSID {00024500-0000-0000-C000-000000000046}的组件的COM类工厂失败,原因如下:80070005访问被拒绝。 (从HRESULTexception:0x80070005(E_ACCESSDENIED))。 你能帮我理解这个错误吗?

.NET C#使用ExcelPackage通过JS post导出为ex​​cel

我不知道我在这里错过了什么。 我有一个button,单击时,我使用JavaScript来调用控制器。 这个控制器应该创build一个excel文件并将其返回给用户,使他们能够下载/保存文件。 我已经尝试了一些不同的方法,但无法设法使其工作。 这是我的JavaScript方面: function exportList() { var val = $("#team-dropdown").val(); const date = new Date().toISOString(); const param = { "Date": date, "GroupID": 1 } $.ajax({ url: "@Url.Action("ExportToExcel", "Home")", type: "POST", data: param }); } 这是我的服务器端: public FileResult ExportToExcel(DateTime date, int groupID) { Load l = new Load(); List<Load> loadList = l.GetLoadsForGroup(date, groupID); var […]