通过Silverlight应用程序从Excel导入数据

时间:2016-12-18 05:09:58

标签: c# excel silverlight import

我正在尝试创建一个实用程序,用于从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。

1 个答案:

答案 0 :(得分:0)

我使用了Spreadsheetgear dll,下面是代码。

Workbook = SpreadsheetGear.Factory.GetWorkbook(fInfo.FullName);    
worksheet = Workbook.Worksheets["sheet1"];    
cells = worksheet.Cells;