を知っているオブジェクトのプロパティには、私は次のように定義されているいくつかのパブリック変数があります。更新のみ、その名前
public class FieldsToMonitor
{
public int Id { get; set; }
public string Title { get; set; }
public int Rev {get; set;}
}
を私は今の値で、これらの変数を移入したいのですが、fm.[varible name]
ニーズがfield.Name
と同じになります。ここで私は先に時間のプロパティ名を知っていたし、プロパティ名の順序ならば、私はループに移入する方法を:
// loop 1
fm.Id = revision.Fields[field.Name].Value;
// ... loop 2 ...
fm.Title = revision.Fields[field.Name].Value;
// ... loop 3 ...
fm.Rev = revision.Fields[field.Name].Value;
ここでは、私はfield.Name
は、プロパティ名で置換することができる場所をやりたいものです。
fm.IDは FMなる。[field.Name]ここfield.Name == "ID"
fm.Titleが FMなる。[field.Name]ここfield.Name == "タイトル「
fm.Revは[field.Name]。 FMになり、どこfield.Name == "改訂"
は、このための解決策はありますか?ここで
私がこれまで持っているものの多くのコードです:
public class FieldsToMonitor
{
public int Id { get; set; }
public string Title { get; set; }
public int Rev {get; set;}
}
static BindingList<FieldsToMonitor> FieldsToMonitorList
= new BindingList<FieldsToMonitor>();
// ...
// Loop through the work item revisions
foreach (Revision revision in wi.Revisions)
{
fm = new FieldsToMonitor();
// Get values for the work item fields for each revision
var row = dataTable.NewRow();
foreach (Field field in wi.Fields)
{
fieldNameType = field.Name;
switch (fieldNameType)
{
case "ID":
case "Title":
case "Rev":
// the following doesn't work
fm + ".[field.Name]" = revision.Fields[field.Name].Value;
fm[field.Name] = revision.Fields[field.Name].Value;
row[field.Name] = revision.Fields[field.Name].Value;
break;
}
}
}
これは最終的にUIですか?あなたはWinFormsまたはWPFを使用していますか? – user7116
あなたの質問の提示を心に留めてください。 –