これにより、クエリに別のデータ コンテキストで定義された項目への参照が含まれているというエラーがスローされます。一番下にcatNameを割り当てようとすると。
this.CustomSettings = (
from xx in DBContext.ProductCustomizationMasters
where xx.ProductID == this._ProductID
select new ProductCustomization()
{
ProductID = (int)xx.ProductID,
CategoryID = (int)xx.CustomCategoryID,
CustomID = xx.CustomID,
CustomizationType = (CategoryType)xx.CustomType,
DefaultFreeCount = (short)xx.DefaultFreeCount,
IsDefaultLimit = (bool)xx.IsDefault,
HasItems = ((xx.DefaultFreeCount == 0) ? (false) : (true)),
CatName= (from yy in DBContext.CustomCategoryTbls where yy.CatID == xx.CustomCategoryID select yy.CatName).FirstOrDefault()
}
).ToList();
私はこのようなデータコンテキストを作成しています
private libDBDataContext _DB = null;
public libDBDataContext DBContext { get { return (_DB == null) ? new libDBDataContext() : _DB; } set { _DB = value; } }
物事が同じデータコンテキストで実行されている間、2つの異なるデータコンテキストがあると言う方法。