LOGIC IS MAGIC
Solved by My Self: Solution.
There are two methods i have found, by which we can bind the data with Eval in gridview.
List articleList = new List();
List articleList1 = new List();
#region Method I
var promotionProductObject = (from p in _dataEntities.Promotions
join pa in _dataEntities.PromotionArticles
on p.PromotionId equals pa.PromotionId
where (pa.DeletedBy == null) && (pa.DeletedOn == null) && (p.PromotionId == 14)
select new
{
p,
productlist = (from a in _dataEntities.Artikels
where pa.ArticleId == a.ID
select a)
}).ToList();
if (promotionProductObject != null)
{
for (int i = 0; i < promotionProductObject.Count(); i++)
{
Artikel article = promotionProductObject[i].productlist.ToList()[0];
articleList.Add(article);
}
grdArticleDetails.DataSource = articleList;
grdArticleDetails.DataBind();
}
#endregion Method I
#region Method II
var promotionArtilceObject = (from p in _dataEntities.Promotions
join pa in _dataEntities.PromotionArticles
on p.PromotionId equals pa.PromotionId
join a in _dataEntities.Artikels
on pa.ArticleId equals a.ID
where (pa.DeletedBy == null)
&& (pa.DeletedOn == null) && (p.PromotionId == 14)
select new
{
p,
productList = a
}).ToList();
if (promotionArtilceObject != null)
{
for (int i = 0; i < promotionArtilceObject.Count(); i++)
{
articleList1.Add(promotionArtilceObject[i].productList);
}
grdArticleDetails1.DataSource = articleList1;
grdArticleDetails1.DataBind();
}
#endregion Method II
}
And the value can be access by -
lblArticleName.Text = articleList1[_rowCount1].Bezeichnung;