.net 我的登录页面需要使用Excel工作表中存储的数据验证用户名和密码吗?

.net 我的登录页面需要使用Excel工作表中存储的数据验证用户名和密码吗?,.net,excel,login,c#-3.0,oledbconnection,.net,Excel,Login,C# 3.0,Oledbconnection,我正在为我的C应用程序开发一个登录页面。在这里,我使用Excel工作表来存储用户凭据 在这里,我要做的是,当用户提供其凭据并单击登录按钮时: 将“USERIDS”Excel表加载到DataTable的对象中。 现在检查“userid”表的“User\u Id”列中的“tbuserid”文本框中给出的用户Id。 如果用户Id匹配,则使用相应匹配记录的“密码”字段进行检查,[即,不需要检查整个密码字段] 注意:如果用户Id不匹配,则无需检查密码字段。并显示带有“ErrorProvider”控件的警报

我正在为我的C应用程序开发一个登录页面。在这里,我使用Excel工作表来存储用户凭据

在这里,我要做的是,当用户提供其凭据并单击登录按钮时:

将“USERIDS”Excel表加载到DataTable的对象中。 现在检查“userid”表的“User\u Id”列中的“tbuserid”文本框中给出的用户Id。 如果用户Id匹配,则使用相应匹配记录的“密码”字段进行检查,[即,不需要检查整个密码字段] 注意:如果用户Id不匹配,则无需检查密码字段。并显示带有“ErrorProvider”控件的警报消息

如果用户Id和密码都匹配,则关闭此登录表单并打开“Form1”表单

密码字段文本框应以“*”字符可见

问题:在提供凭据后单击“登录”按钮时,我收到错误消息

顺便说一句,使用以下连接字符串语句:

con1 = new OleDbConnection("Provider=Microsoft.JET.Oledb.4.0;Data Source=D:\\USERIDS.xls;Extended Properties=Excel 8.0; HDR=Yes;IMEX=1");
要在C中使用excel: 使用Interop Microsoft.Office.Interop.Excel

即:

这将返回所有Excel数据的对象数组。 此时,您只需执行以下操作: 表[x,y].ToString

现在您有了一个字符串来比较您的登录! 祝你好运

//Added Namespaces
using System.Net;
using System.Net.Mail;
using System.IO;
using Excel = Microsoft.Office.Interop.Excel;
using System.Runtime.InteropServices;
using System.Reflection;


    private Object[,] generateExcel()
    {
        //Open excel file
        Excel.Application objApp = new Excel.Application();
        Excel.Workbooks objBooks = objApp.Workbooks;
        Excel._Workbook objBook = objBooks.Open("YourPathHere", Missing.Value, Missing.Value, Missing.Value, Missing.Value,Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
        Excel.Sheets objSheets = objBook.Worksheets;
        Excel._Worksheet objSheet = (Excel._Worksheet)objSheets.get_Item(1);
        objApp.DisplayAlerts = false;

        //Opens excel - remove this line for end product
        objApp.Visible = true;

        //Data portion
        //Your range as the arguement
        Excel.Range objRange = (Excel.Range)objSheet.get_Range("A6", "D6");

        //Create table
        Object[,] tableData = (Object[,])objRange.Value2;

        //Close excel - add this in end product
        objApp.Application.Quit();

        return tableData;
    }