私は JSON 文字列を作成しています。行セクションには、作成してヘルパー関数によって計算される JSON 文字列に渡したい 2 つの値があります。このヘルパー関数を 1 回呼び出して、値の配列 (私の場合は 2 つ) を返す方法があるかどうか疑問に思っているので、ヘルパー関数を 2 回呼び出す必要はありません (データベースに 2 回アクセスするのを避けます)。
サンプルコード
rows = (
from tempItem in pagedQuery.ToList()
select new
{
cell = new string[] {
tempItem.Name,
tempItem.Regular,
HelperFunction.GetPrice(tempItem.ID, false).ToString(),
tempItem.Premium,
HelperFunction.GetPrice(tempItem.ID, true).ToString(),
}
}).ToArray()
関数の例:
public decimal GetPrice(int ID, bool Premium)
{
Item item = databaseCallToGetPrice(ID).first();
if (Premium)
return item.ExamplePrice;
else
return item.PremiumExamplePrice;
}
だから私が求めているのは、私の例ではヘルパー関数を2回呼び出すことです。それを1回だけ呼び出してから、何とか永続化してから2回使用できる配列を返す方法はありますか?