well it's hard to say...
but i think that using a single query like yours is even harder.
try to split your query like that
var skus = from sku in multiviewcontext.GetTable<Ignify.Framework.Data.Tables.SKU>()
where sku.CSRInformation == projectVariantId
where sku.Visible
select sku;
var products = from product in multiviewcontext.GetTable<Ignify.Framework.Data.Tables.Product>()
where RequestedproductMasterIds.Contains(product.Code)
select product;
var itempricelists = from itempricelist in multiviewcontext.GetTable<Ignify.Framework.Data.Tables.PMItemPriceList_AX>()
where itempricelist.CONFIGID == projectVariantId
where itempricelist.ACCOUNTRELATION == priceGroupId
select itempricelist;
var result = from sku in skus
join product in products on sku.ProductId equals product.ProductId
join itempricelist in itempricelists on product.Code equals itempricelist.ITEMRELATION
select new {sku, product, itempricelist};
and debug every "part" to find the duplicates.