我正在使用c#(visual studio 2008)來嘗試訪問excel電子表格中的業務邏輯。在另一個c#項目中訪問excel資源
我有下面的類..(隨意批評,如果我這樣做不對 - 我是Java開發人員一般 - 這是我的第一個C#應用程序。)
public class SpreadSheetClass
{
// apologies for any typo's code written in place, not copied from an IDE...
//
public DataTable DoIt()
{
DataTable result;
String sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MySpreadsheet.xls;Extended Properties=Excel 8.0;";
OleDbConnection connection = new OleDbConnection(sConnection);
try
{
connection.Open();
OleDbCommand oleDbcCommand = new OleDbCommand("SELECT * FROM SELECTION", connection);
OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
dataAdapter.SelectCommand = oleDbcCommand;
result = new DataTable();
dataAdapter.Fill(result);
}
finally
{
connection.Close();
}
return result;
}
}
我加入了電子表格的項目使用添加 - >現有項目 - >然後選擇.xls文件。然後,我編輯了文件的屬性,說它是一個嵌入式資源,並將其始終複製到輸出目錄。
我可以從項目中訪問電子表格。
不過,我想運行從項目外的大一方法,例如從測試項目中,我得到以下異常:
「測試方法TestProject1.UnitTest1.TestMethod1拋出異常:System.Data。 OleDb.OleDbException:Microsoft Jet數據庫引擎無法找到對象'SELECTION'。請確保該對象存在,並且正確拼寫其名稱和路徑名稱。「
我確信我的問題是調用一個從另一個項目訪問資源的類。
幫助!