Необходимо преобразовать набор данных в строку в C # - PullRequest
0 голосов
/ 21 сентября 2009

У меня есть источник данных Excel, к которому я обращаюсь, и размещаю данные в сетке данных. Хитрость в том, что мне нужны данные в строковой переменной, но я не могу этого сделать. Я пробовал массивы списков и массивов, но пока не получаю, потому что набор данных имеет несколько типов данных (числа, строки).

Пожалуйста, помогите мне. Исходный код:

<%@ Page Language="C#" %>

<%@ Import Namespace="System.Data.OleDb" %>

<%@ Import Namespace="System.Data" %>

<%@ Import Namespace="System" %>

<script language="C#" runat="server">
protected void Page_Load(Object Src, EventArgs E)
{
string strConn;

    string str="08/PST";
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=|DataDirectory|marks.xls;" +
"Extended Properties=Excel 8.0;";
//You must use the $ after the object you reference in the spreadsheet
OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT [Subject ID] FROM [Employees$] where emp_id='" + str + "'", strConn);
DataSet myDataSet = new DataSet();
myCommand.Fill(myDataSet, "ExcelInfo");
DataGrid1.DataSource = myDataSet.Tables["ExcelInfo"].DefaultView;
DataGrid1.DataBind();
}
</script>
<html>
<head><title>Data Exported</title></head>
<body style="FONT-FAMILY: arial">
    <h2>Simple Data Report 
    </h2>
    <hr size="1" />
    <form id="Form1" runat="server">
        <asp:datagrid id="DataGrid1" runat="server" EnableViewState="False" ForeColor="Black" BackColor="White" CellPadding="3" GridLines="None" CellSpacing="1">
            <HeaderStyle font-bold="True" forecolor="white" backcolor="#4A3C8C"></HeaderStyle>
            <ItemStyle backcolor="#DEDFDE"></ItemStyle>
        </asp:datagrid>
    </form>
</body>
</html>

Заранее спасибо

Ответы [ 3 ]

4 голосов
/ 21 сентября 2009

Вызовите метод GetXml () объекта DataSet.

2 голосов
/ 21 сентября 2009

Прямо сейчас ваш набор данных получает только [Идентификатор субъекта] в вашем наборе данных. Так вы бы рассмотрели изменение самого запроса для возврата строки?

SQL SERVER:

SELECT CONVERT (VarChar, [Subject ID]) FROM [Employees$] where emp_id=

JET

SELECT CSTR ([Subject ID]) as [Subject ID] FROM [Employees$] where emp_id=
0 голосов
/ 22 сентября 2009

Построил строку, когда я прочитал каждую строку и смог успешно ее вывести

while (reader.Read ())

            {
               string str="";

                str = str + reader[4].ToString().PadLeft(10) + '|' + 

reader [5] .ToString (). PadLeft (1) + '|' + читатель [6] .ToString () + '\ n';

            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...