lua では、非常に簡単にテーブルを作成して関数を追加できます。
C#でそれを行うにはどうすればよいですか? 私の最初のアイデアは、デリゲートのリストを使用し、リストに匿名関数を入力することでしたが、正しい構文を取得できません。
public class PlanItem
{
public string Name { get; set; }
public List<BusinessRule> Rules;
}
public delegate bool BusinessRule(PlanItem item);
[Test]
public void TestIt()
{
PlanItem item = new PlanItem();
item.Rules.Add(
BusinessRule(PlanItem item)
{
return !string.IsNullOrEmpty(item.Name);
}
);
foreach(BusinessRule rule in item.Rules)
{
if(!rule(item))
// write uh-oh
}
}