我有一些文字可能如下:
string str = "Dear Fred, Yours sincerely [Project Manager]";
或者,它可能看起来像这样:
string str = "Dear Fred, Yours sincerely [Administrator]";
或十个人中的任何一个'签署'特定项目的电子邮件。在我正在处理的页面上,我有一个包含10行的数据集,其中包含两列数据,如:
[Project Manager] .... Fred Smith
[Administrator] ..... Arthur Jones
[Coordinator] .... Belinda Digby
(上面几行中数据之间的点是尝试表示记录集中的表格数据。)
当我在文本框中显示字符串str时,如何“查找”[Project Manager']是谁 - 或数据集中的[Administrator'] - 所以我可以用正确的名称替换占位符?
答案 0 :(得分:0)
假设DataSet是指具有DataTable和10行的Ado.net DataSet对象,那么这是一种方式:
DataSet dataSet = new DataSet();
DataTable dataTable = new DataTable();
dataTable.TableName = "Managers";
dataTable.Columns.Add(new DataColumn("Role"));
dataTable.Columns.Add(new DataColumn("Who"));
DataRow dataRow = dataTable.NewRow();
dataRow[0] = "Singer";
dataRow[1] = "Johnny Cash";
dataTable.Rows.Add(dataRow);
dataRow = dataTable.NewRow();
dataRow[0] = "Banjo guy";
dataRow[1] = "Cleetus Smith";
dataTable.Rows.Add(dataRow);
dataSet.Tables.Add(dataTable);
String thisGuyIs = "Banjo guy";
String hisNameIs = "This is our guy: {0}";
DataRow[] foundRows;
foundRows = dataSet.Tables["Managers"].Select("Role = '" + thisGuyIs + "'");
if (foundRows.Count() == 1) {
hisNameIs = String.Format(hisNameIs, foundRows[0]["Who"].ToString());
}