带子查询的EF7中的LINQ查询不返回数据

时间:2016-03-15 19:07:02

标签: entity-framework linq

我正在使用MVC6 EF7并具有以下代码。当我在调试模式下运行时,LINQ查询给出错误评估timedout,如果我简单地运行它,则查询不会在scree上显示任何数据。 我试过没有子查询,返回完整的数据,我也尝试将子查询作为主查询,也返回数据。但是一旦我将它作为子查询,它就不会返回数据。我错过了什么? EF7不支持包含吗?还有其他办法吗?我不想让内部查询变量然后使用它,我想要一个组合查询。

using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Data;
using Microsoft.AspNet.Http;
using Microsoft.AspNet.Mvc;
using Microsoft.Data.Entity;

using NavMember;

namespace NavMember.Controllers
{
    [Produces("application/json")]
    [Route("api/VendorsAPI")]
    public class VendorsAPIController : Controller
    {
        private TestNavMembershipContext _context;

            public class testlist
        {
            public int MVE_VEID;
            public string VE_NAME;
            public string VE_ADDR1;
        }
        public VendorsAPIController(TestNavMembershipContext  context)
        {
            _context = context;

        }

        // GET: api/VendorsAPI
        [HttpGet]
        public IEnumerable<testlist> GetVendors()
        {

            IQueryable<testlist> query = from t1 in _context.Vendors
                                         let t2s = from t2 in _context.VendorMemberResNM
                                                   where t2.MVMR_MMID.Value == 237244
                                                   select t2.MVMR_VEID.Value
                                         where t2s.Contains(t1.MVE_VEID)
                                         select new testlist { MVE_VEID = t1.MVE_VEID, VE_NAME = t1.VE_NAME, VE_ADDR1 = t1.VE_ADDR1 };
            return query;

        }

0 个答案:

没有答案