我正在尝试创建一个实用程序,用于从Excel工作表导入所有数据,并通过Silverlight应用程序更新Sharepoint列表。
我使用openfiledialog方法得到了文件详细信息。以下是代码。
private void btn_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Multiselect = false;
dlg.InitialDirectory = "C:\\";
dlg.Filter = "Excel Files|*.xls;*.xlsx;*.xlsm";
// Show dialog
if (dlg.ShowDialog() == true)
{
// Get the selected file name and set it as text of a TextBox
FileInfo fInfo= dlg.File;
txtfilename.Text = fInfo.FullName.ToString();
FileStream Stream = dlg.File.OpenRead();
在此之后,我试图从工作表中读取数据并使用下面的C#代码填充列表
Workbook book = Workbook.Open(Stream);
Worksheet sheet = book.Worksheets[0];
for (int i = sheet.Cells.FirstRowIndex; i < sheet.Cells.LastRowIndex; i++)
{
for (int j = sheet.Cells.FirstColIndex; j < sheet.Cells.LastColIndex; j++)
{
//CODE TO ADD ITEM IN THE LIST
}
}
但现在问题是,我的代码中无法识别工作簿和工作表的方法,因为没有引用。 Silverlight应用程序中这些方法的等效程序集引用是什么?在普通的C#应用程序中,我们使用Microsoft.Office.Interop.Excel.dll来实现这些方法。
我正在使用Silverlight 5。
答案 0 :(得分:0)
我使用了Spreadsheetgear dll,下面是代码。
Workbook = SpreadsheetGear.Factory.GetWorkbook(fInfo.FullName);
worksheet = Workbook.Worksheets["sheet1"];
cells = worksheet.Cells;