将Excel数据导入Visual Studio 2010中的DataGridView

请使用以下代码帮助修复从Excel文档导入数据到DataGridView控件: private void button5_Click(object sender, EventArgs e) { Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); Excel.Workbook workbook =app.Workbooks.Open(@”C:\Users\Admin\Desktop\Dropbox\Vandit’s Folder\Internship\test.xlsx”); Excel.Worksheet worksheet = workbook.ActiveSheet; rcount = worksheet.UsedRange.Rows.Count; int i = 0; for(;i<rcount;i++) { dataGridView1.Rows[i].Cells["Column1"].Value = worksheet.Cells[i + 1, 1].Value; dataGridView1.Rows[i].Cells["Column2"].Value = worksheet.Cells[i + 1, 2].Value; } } 当我运行这段代码时,我总是得到一个例外 “Index was out of range. Must be non-negative and less […]

PInvoke和char **

我从我想在c#应用程序中使用的人那里得到了这个程序集。 标题看起来像这样: int __declspec(dllimport) s2o(WCHAR* filename, char** out, int* len); 我设法让它部分工作,使用: [DllImport(“s2o.dll”, EntryPoint = “?skn2obj@@YAHPA_WPAPADPAH@Z”, CallingConvention = CallingConvention.Cdecl)] public static extern int s2o( [MarshalAs(UnmanagedType.LPWStr)] string filename, ref char[] @out, ref int len ); 然后像这样调用它: char[] result = null; int length = 0; s2o(“filepath”, ref result, ref length); 它似乎部分起作用,因为“长度”实际上得到了一个值。 不幸的是,’结果’保持为空。 我应该怎么做才能使这个工作? 编辑: 好吧,我设法通过用IntPtr替换char []然后像Nick建议调用’Marshal.PtrToStringAnsi’来工作: string result […]

将gridview转换为图像

我想将gridview转换为图像并将其保存到asp.net 3.5中的localdisk。我不知道该怎么做。 任何人都可以请一些建议。 提前致谢。

如何将超过10000个参数添加到单个sql命令

我想为单个sql命令添加超过10000个参数。 怎么可能? 据我所知2100参数单个sql命令。

如何在mongoDB中查看任何更改(新行)?

有没有办法在mongoDB观察每个collection (甚至一个)? 现在我考虑定时器来检查文档号或最后一个Id,但也许有可能实现newDocumentAddedEvent这样的newDocumentAddedEvent ?

将整数值分配给字母

所以我有这个问题。 我有文本框,文本包含12个数字。 所以例如012345678912.现在我不知道如何分配第一个,然后第二个……等数字到字母,如a,b,c,d,e,f,g,h,i,j ,k,l因为我需要它们用下面的公式计算第13(m)个数 m = 11 − (( 7*(a+g) + 6*(b+h) + 5*(c+i) + 4*(d+j) + 3*(e+k) + 2*(f+l) ) mod 11) 此外,我试图使这个公式in c#可读文本,我得到了这个,希望它是正确的 int result = (int)new DataTable().Compute(” 11 − (( 7*(a+g) + 6*(b+h) + 5*(c+i) + 4*(d+j) + 3*(e+k) + 2*(f+l) ) mod 11)”, null);

具有默认值的entity framework一对多

我正在尝试在Entity Framework中执行一对多关系,其中许多项中的一个可选地被指定为默认值。 public class SomeEntity { public int Id { get; set; } public Item DefaultItem { get; set; } // Optional public ICollection Items { get; set; } } public class Item { public int Id { get; set; } public string ItemName { get; set; } public SomeEntity SomeEntity { get; set; } […]

使用webclient DownloadFileAsync多个文件

描述 使用webclient的DownloadFileAsync下载多个文件,并使用文本文件进行URL输入下载。 问题 我使用的方法根本不会下载文件。 只是跑步而且什么都不做。 它填充列表数组然后退出程序而不下载单个文件。 我用谷歌搜索解决方案但是缺乏信心。 然后尝试在数据库中搜索具有相同结果的解决方案。 任何帮助表示赞赏。 问题 为什么这种方法不起作用? 我该怎么做才能改善这一点并从中吸取教训。 码 DownloadClass.cs using System; using System.ComponentModel; using System.Collections.Generic; using System.Net; using System.Threading; using System.Windows.Forms; namespace ThreadTest { class DownloadClass { public struct download { public static string URL { get; set; } public static string file { get; set; } public static string[] […]

使用本机C#创建ECC专用/公钥

关于如何生成公钥和私钥ECC密钥对,我一直在谷歌和微软的Crypto API上花了好几个小时。 ECDiffieHellmanCng类( http://msdn.microsoft.com/en-us/library/system.security.cryptography.ecdiffiehellmancng.aspx#Y3081 )列出了一个示例,但我不知道如何直接访问私钥。 对于该程序的一些背景知识,它是一个C#控制台应用程序,用于管理TrueCrypt会话,AES预共享密钥加密和ECDH / AES加密。 我需要一个函数来创建一个公钥/私钥对以保存到文件,然后记录如何在包装的AES加密文件中使用这些生成的密钥(而不是像运行示例所示在运行时生成它)。 此外,我知道将文件保存到硬盘驱动器时出现的所有漏洞,但我并不担心这个程序,我正在考虑2台客户端计算机是安全的。 另请注意,我不想使用BouncyCastle API。

该帐户无权模拟所请求的用户

我尝试访问资源邮箱时收到此错误。 请任何人帮助我。 我是EWS的新手。 我可以通过OWA(Outlook Web应用程序)访问资源邮箱。 但我不是这个邮箱的所有者,因为它是共享邮箱。 我的代码: ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallBack; ExchangeService newExchangeService = new ExchangeService (ExchangeVersion.Exchange2007_SP1); newExchangeService.Credentials = new NetworkCredential(username, password, domain); newExchangeService.AutodiscoverUrl(email-id, RedirectionUrlValidationCallback); newExchangeService.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, email_which_i_want_to_access); Folder visitorsFolder = Folder.Bind(newExchangeService, WellKnownFolderName.Inbox); foreach (Folder childfolder in visitorsFolder.FindFolders(new FolderView(10))) { Console.WriteLine(childfolder.DisplayName); }