對於低預算的項目,我必須用MySql運行IIS Asp Mvc。遷移現有的項目運行良好,但如果我創建一個LINQ查詢與採取&跳過它失敗。ASP MVC MSSQL到MySQL的遷移
第一個測試(OK)
var post = _db.Posts.FirstOrDefaultAsync(a => a.id == 1234);
第二個測試(OK)
var post = _db.Posts.Include(a => a.Comments);
var result = await post.Select(a => new TRDPostViewModel
{
Created = a.Created,
Body = a.Body,
Comments = a.Comments.Select(d => new TRDCommentViewModel
{
Body = d.Body,
Id = d.Id,
}).Where(m => m.Trash == false)
.OrderByDescending(f => f.Created)
.ToList(),
}).FirstOrDefaultAsync();
第三個測試(失敗)
var result = await post.Select(a => new TRDPostViewModel
{
Created = a.Created,
Body = a.Body,
Comments = a.Comments.Select(d => new TRDCommentViewModel
{
Body = d.Body,
Id = d.Id,
}).Where(m => m.Trash == false)
.OrderByDescending(f => f.Created)
.Skip(33)
.Take(10)
.ToList(),
}).FirstOrDefaultAsync();
這裏是跟蹤:
未知列「Extent1.Id」中「,其中clause'MySql.Data.MySqlClient.MySqlException
毫無意義可言。與MsSql相同的代碼工作正常。使用最新的MySql.Data.Entity.EF6,版本= 6.9.7.0
我錯過了什麼嗎?花幾個小時解決,但沒有成功。
您是否嘗試激活EF記錄器(Database.Log = Console.Write)來檢查會發生什麼? –
Jap我記錄了失敗的SQL查詢。但這真的很奇怪。我搜索日誌並將其粘貼到此處。 – creality