Column 'Column Name' does not belong to table Table
2011-04-13 16:01
597 查看
Server Error in '/WebSite1' Application.
Column '工号' does not belong to table Table.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.Exception Details: System.ArgumentException: Column '工号' does not belong to table Table.
Source Error:
Line 65: foreach (DataRow dataRow in objDs.Tables[0].Rows) Line 66: { Line 67: objKqDatas.Insert( Line 68: objDictionary["PrimaryKey"].ToString(), Line 69: dataRow["工号"].ToString(), |
Stack Trace:
[ArgumentException: Column '工号' does not belong to table Table.] System.Data.DataRow.GetDataColumn(String columnName) +2079375 System.Data.DataRow.get_Item(String columnName) +13 System_HumanResources_KQ_Analysis.Data_Binding() in d:\Projects\ERP\System\HumanResources\KQ\Analysis.aspx.cs:67 System_HumanResources_KQ_Analysis.Page_Load(Object sender, EventArgs e) in d:\Projects\ERP\System\HumanResources\KQ\Analysis.aspx.cs:34 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35 System.Web.UI.Control.OnLoad(EventArgs e) +91 System.Web.UI.Control.LoadRecursive() +74 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2207 |
用户上传的文件不符合样版文件。列名不一致。需要想出一个方法,去判断Excel的表头字段。下面方法是检查出Excel结构,需要使用GetOleDbSchemaTable方法进行处理。
//oleDBconnection http://www.cnblogs.com/insus/articles/2008946.html string ec = objKQ.GetExcelConnectionString("~/Temp/49be9717-ed46-4f1e-8302-4d23efe4db93.xlsx");
OleDbConnection oc = new OleDbConnection(ec);
oc.Open();
String[] restrections = { null, null, "Sheet1$", null };
DataTable oDt = oc.GetOleDbSchemaTable(OleDbSchemaGuid.Columns,restrections);
oc.Close();
结果:
到此为止,只是找到Excel文件的Schema,接下来是需要处理得到的结果是否是您要求的字段了。
String[] excelColumn = new String[oDt.Rows.Count];
int i = 0;
foreach (DataRow row in dt.Rows)
{
excelColumn[i] = row["COLUMN_NAME"].ToString();
i++;
}
for (int j = 0; j < excelColumn.Length; j++)
{
//这里比自己的字段。
}
相关文章推荐
- Column <Column Name> does not belong to table Table
- "column "x" does not belong to table "y""
- Proposed solution for the NHibernate exception “Column ‘Reserved Word’ does not belong to table ReservedWords.”
- Column 'column' does not belong to table Table
- Column does not belong to table error!
- 问题网站报错“Column sumquantity does not belong to table ”
- Ado.Net间歇性问题的一种解决办法 :Column 'column' does not belong to table Table
- The patch E:\android-sdk-windows does not belong to a directory.Android studio will use this Andriod
- This Style does not belong to the supplied Workbook. Are you trying to assign a style from one workb
- java.lang.SecurityException: Package com.android.settings does not belong to 1001
- sqlite编码问题 OperationalError: Could not decode to UTF-8 column 'name' with
- Clion this file does not belong to any project target问题解决方案
- 错误:error: ISO C++ does not permit 'wxScrolledWindow::sm_eventTable' to be defined as 'MyClass::sm_eventTable'
- Mysql官方文档中争对安全添加列的处理方法。Mysql Add a Column to a table if not exists
- Type mytableview does not confirm to portocol UITableViewDataResource
- Clion this file does not belong to any project target
- hive 异常 (Attempt to do update or delete on table terminal that does not use an )
- 关于Mac版的Clion出现this file does not belong to any project target
- magento2 拿到sql后,导入发现错误:Constraint "quote_to_store" references table that does not exist.
- source file does not belong to the project being debugged