Linq
var docStatusBar = from ee in zDtNetRecord.AsEnumerable() from ff in zDtPvMenu.AsEnumerable() from gg in zDtPgpPv.AsEnumerable() where (ee.Field<int>("FK_PvUserListID") == zUserId && ff.Field<int>("ID") == ee.Field<int>("FK_PvMenuID") && ff.Field<string>("Command") == gg.Field<string>("Command") && !ff.Field<bool>("IsDeleted")) orderby ee.Field<int>("UsedTimes") descending select new { MenuName = ff.Field<string>("MenuName"), Command = ff.Field<string>("Command"), UserCmd = gg.Field<string>("UserCmd"), Detail = ff.Field<string>("Detail"), MenuParent = ff.Field<string>("MenuParent"), UsedTimes = ee.Field<int>("UsedTimes"), IsActive = ff.Field<bool>("IsActive"), };