2
MVCエンティティフレームワークを使用する私はスキップしてパラメータを取るAJAXで関数を呼び出しています。LINQ IQueryableをスキップして同じ行を返すと取る
[HttpGet]
public async Task<ActionResult> _ViewMore(int take, int skip)
{
var c = await GetContent(take, skip);
return View(c)
}
public async Task<List<PartialContent>> GetContentForCulture(int take, int skip)
{
return await ContextHelper.SearchContent(take, skip);
}
public static async Task<List<PartialContent>> SearchContent(int take, int skip)
{
try
{
using (var context = new Context())
{
var content = context.ContentEntities.SearchContent(take, skip);
var f = await content.Select(s => new PartialContent
{
Subtype = s.Subtype,
Id = s.Id,
MainImage = s.MainImage,
}).ToListAsync();
return f;
}
}
catch (Exception ex)
{
// Log.Err(ex.Message, ex);
return null;
}
}
public static IQueryable<T> SearchContent<T>(this IQueryable<T> source, int take, int skip)
where T : ContentEntity
{
source.Where(m => m.IsPublished).OrderByDescending(m => m.DatePublished).Skip(skip).Take(take)
}
私の問題は、私は関数を呼び出すたびに同じ行がも、私のデバッグとスキップ値の増分かかわらず返され、私はからフェッチする行の数百を持っているということです。
によって句で同じ行の別の注文を追加しました。 – Jackmagic1
EFが[トレース](https://msdn.microsoft.com/en-us/data/dn469464.aspx)を呼び出しましたか? –
複数のSearchContent()メソッドがあると思います。テイクとスキップだけのものには2つのパラメータがあり、ポストされたものには8つのパラメータがあります。 – jdweng