【发布时间】:2013-07-01 11:53:49
【问题描述】:
遇到了一个问题,我从一天开始就在努力解决这个问题。 我有一个包含 varchar 列和 XML 列的表。架构如下:
create table dbo.StandardView(
Name varchar(50),
Fields xml)
我插入了一条记录如下:
insert into dbo.StandardView
values('Standard',N'<fieldname>FirstName,SecondName,ThirdName</fieldname>')
我需要用以下实体填充一个列表框:
FirstName
SecondName
ThirdName
填充列表框的代码如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
PopulateValues();
}
}
public void PopulateValues()
{
SqlDataAdapter da = new SqlDataAdapter("select * from dbo.StandardView", xconn);
DataTable dt = new DataTable();
da.Fill(dt);
lstBox.DataSource = dt;
lstBox.DataTextField = dt.Columns[1].ToString();
lstBox.DataValueField = dt.Columns[1].ToString();
lstBox.DataBind();
}
上面的代码将整个 xml 列以字符串格式放在列表框中,非常明显。
我尝试了一些 xmlserializer、deserializer 和 xmlreader 的东西,但无法相应地填充列表框。
请高手指导。
【问题讨论】: