コードのこのセクションでスタックオーバーフローの例外が発生しています。これは、CustomerオブジェクトがCustomerBackgroundLevelオブジェクトのリストを呼び出し、それぞれが新しい顧客オブジェクトを作成するために発生していることは明らかです。私は問題を回避する方法を見つけようとしています、どんな助けでもいただければ幸いです。
カスタマーコンストラクター-
public CustomerVO(Customer item)
{
CustomerID = item.CustomerID;
CustomerName = item.CustomerName;
ECNNumber = item.ECNNumber;
CustomerBackgroundLevels = item.CustomerBackgroundLevels.Select(c => new CustomerBackgroundLevelVO(c)).ToList();
}
カスタマーバックグラウンドレベルコンストラクター-
public CustomerBackgroundLevelVO(CustomerBackgroundLevel item)
{
CustomerBackgroundLevelID = item.CustomerBackgroundLevelID;
CustomerID = item.CustomerID;
BackgroundLevelID = item.BackgroundLevelID;
StartDate = item.StartDate;
EndDate = item.EndDate;
Customer = new CustomerVO(item.Customer);
BackgroundLevel = new BackgroundLevelVO(item.BackgroundLevel);
}
カスタマーゲットメソッド-
public CustomerVO GetByID(int id)
{
var item = repository.AsQueryable().Where(x => x.CustomerID == id).FirstOrDefault();
if (item == null)
return null;
return new CustomerVO(item);
}