オブジェクトの取得方法を知りたいです。
私は3つのテーブルを持っています:
Categories -
-- Category_ID
-- Category_Deleted
-- Category_Date_Creation
Languages
-- Language_ID
-- Language_Code
-- Language_Name
Category_Names
-- Category_ID
-- Language_ID
-- Category_Name_Value
これらのテーブルから、クラスを作成しました:
public class Language
{
public int Id;
public string Code;
public string Name;
public static Language Covert(DataContext.Language lang)
{
return new Language() { Id = lang.Id, Code = lang.Code, Name = lang.Name }
}
}
public class Catigory
{
public int Id;
public DateTime DateCreation;
public Dictionary<Language, string> Names;
}
今、私はこのようなことをします:
Catigory cat = (from catigory in DataContext.Categories where catigory.Id == ID
select new Catigory() { Id = catigory, DateCreation = catigory.DateCreation }).First();
cat.Names = (from cn in DataContext.Category_Names
join l in DataContext.Languages on cn.Language_ID equals l.Language_ID
where cn.Category_ID == cat.Id
select new { Key = l, Val = cn.Category_Name_Value }).ToDictionary(ss => Language.Covert(ss.Key), ss => ss.Val);
だから私はLinqからCategoryオブジェクトを作成したいのですが、1つのクエリだけです。