Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 为什么在实体框架上使用IPagedList时会生成很长的Sql_Asp.net Mvc_Linq_Entity Framework_Entity Framework 4 - Fatal编程技术网

Asp.net mvc 为什么在实体框架上使用IPagedList时会生成很长的Sql

Asp.net mvc 为什么在实体框架上使用IPagedList时会生成很长的Sql,asp.net-mvc,linq,entity-framework,entity-framework-4,Asp.net Mvc,Linq,Entity Framework,Entity Framework 4,我的asp.net mvc中有以下操作方法,它使用IPagedList显示对象列表: public ActionResult Index(string searchTerm = "", int page = 1, string sort = "") { string withOutSpace = searchTerm.Trim(); ViewBag.searchTerm = searchTerm; ViewBag.CurrentSortOrder = sort;

我的asp.net mvc中有以下操作方法,它使用
IPagedList
显示对象列表:

public ActionResult Index(string searchTerm = "", int page = 1, string sort = "")
{
    string withOutSpace = searchTerm.Trim();

    ViewBag.searchTerm = searchTerm;
    ViewBag.CurrentSortOrder = sort;            

    IPagedList<ITServer> servers = null;
    int pagesize;

    bool succeed = int.TryParse(System.Web.Configuration.WebConfigurationManager.AppSettings["TechPageSize"], out pagesize);

    if (String.IsNullOrEmpty(sort))
    {
        servers = repository.AllFindServers(withOutSpace).OrderBy(a => a.Technology.PartialTag).ToPagedList(page, pagesize);}
        populateViewData(servers.Select(a => a.Technology.IT360ID.Value).ToArray());
        return PartialView("_PagedServerTable", servers);
    }
}
所以不确定为什么会生成这个包含许多冗余代码的长语句


谢谢

创建该语句是因为您要求EF
。包含()
所有这些子元素!因此,EF将在一次调用中获取所有数据-因此,生成的SQL查询将变得如此笨拙…但它是否有效?EF在SQL生成中可能比现实生活中的DB管理员更详细,但您必须记住,EF需要能够轻松地构造非常特定的查询。这些查询很可能不会被简化,除非性能大幅提高。因此,EF似乎要为每个记录加入表,因此,例如,如果Ipaged要检索前15个对象,那么EF将为表执行15个joihn,我的假设正确吗?@johnG不,你的假设不正确。
public IQueryable<ITServer> AllFindServers(string q,bool forautocomplete = false)
{  
    return from server in ITServersCore()
}
public IQueryable<ITServer> ITServersCore()
{
    return IT.ITServers
               .Include(a3 => a3.ITRack.Technology)
               .Include(a3 => a3.ITRack.DataCenter)
               .Include(a5 => a5.Technology)
               .Include(a6 => a6.ITVirtualMachines)//nav
               .Include(a11 => a11.ITServers1)//nav
               .Include(a13 => a13.ITFirewalls)//nav
               .Include(a14 => a14.ITSwitches)//nav
               .Include(a14 => a14.ITRouters);//nav
}
exec sp_executesql N'SELECT 
//code goes hre 
                CAST(NULL AS varbinary(1)) AS [C41], 
                CAST(NULL AS bigint) AS [C42]
                FROM   (SELECT TOP (15) [Project1].[ITServerID] AS [ITServerID], [Project1].[ServerModelID] AS [ServerModelID], [Project1].[ILOIP] AS [ILOIP], [Project1].[RackID] AS [RackID], [Project1].[StatusID] AS [StatusID], [Project1].[BackUpStatusID] AS [BackUpStatusID], [Project1].[RoleID] AS [RoleID], [Project1].[OperatingSystemID] AS [OperatingSystemID], [Project1].[VirtualCenterID] AS [VirtualCenterID], [Project1].[Comment] AS [Comment], [Project1].[timestamp] AS [timestamp], [Project1].[IT360SiteID] AS [IT360SiteID], [Project1].[TechnologyID] AS [TechnologyID], [Project1].[ITRackID] AS [ITRackID], [Project1].[TechnologyID1] AS [TechnologyID1], [Project1].[PartialTag] AS [PartialTag], [Project1].[ITRackID1] AS [ITRackID1], [Project1].[ITRackID2] AS [ITRackID2], [Project1].[DataCenterID] AS [DataCenterID], [Project1].[ZoneID] AS [ZoneID], [Project1].[timestamp1] AS [timestamp1], [Project1].[IT360SiteID1] AS [IT360SiteID1], [Project1].[TechnologyID2] AS [TechnologyID2], [Project1].[Tag] AS [Tag], [Project1].[IsDeleted] AS [IsDeleted], [Project1].[timestamp2] AS [timestamp2], [Project1].[TypeID] AS [TypeID], [Project1].[StartDate] AS [StartDate], [Project1].[IT360ID] AS [IT360ID], [Project1].[IsCompleted] AS [IsCompleted], [Project1].[PartialTag1] AS [PartialTag1], [Project1].[ITRackID3] AS [ITRackID3], [Project1].[ITServerID1] AS [ITServerID1], [Project1].[ID] AS [ID], [Project1].[Name] AS [Name], [Project1].[timestamp3] AS [timestamp3], [Project1].[TechnologyID3] AS [TechnologyID3], [Project1].[Tag1] AS [Tag1], [Project1].[IsDeleted1] AS [IsDeleted1], [Project1].[timestamp4] AS [timestamp4], [Project1].[TypeID1] AS [TypeID1], [Project1].[StartDate1] AS [StartDate1], [Project1].[IT360ID1] AS [IT360ID1], [Project1].[IsCompleted1] AS [IsCompleted1], [Project1].[PartialTag2] AS [PartialTag2], [Project1].[ITRackID4] AS [ITRackID4]
                    FROM ( SELECT [Project1].[ITServerID] AS [ITServerID], [Project1].[ServerModelID] AS [ServerModelID], [Project1].[ILOIP] AS [ILOIP], [Project1].[RackID] AS [RackID], [Project1].[StatusID] AS [StatusID], [Project1].[BackUpStatusID] AS [BackUpStatusID], [Project1].[RoleID] AS [RoleID], [Project1].[OperatingSystemID] AS [OperatingSystemID], [Project1].[VirtualCenterID] AS [VirtualCenterID], [Project1].[Comment] AS [Comment], [Project1].[timestamp] AS [timestamp], [Project1].[IT360SiteID] AS [IT360SiteID], [Project1].[TechnologyID] AS [TechnologyID], [Project1].[ITRackID] AS [ITRackID], [Project1].[TechnologyID1] AS [TechnologyID1], [Project1].[PartialTag] AS [PartialTag], [Project1].[ITRackID1] AS [ITRackID1], [Project1].[ITRackID2] AS [ITRackID2], [Project1].[DataCenterID] AS [DataCenterID], [Project1].[ZoneID] AS [ZoneID], [Project1].[timestamp1] AS [timestamp1], [Project1].[IT360SiteID1] AS [IT360SiteID1], [Project1].[TechnologyID2] AS [TechnologyID2], [Project1].[Tag] AS [Tag], [Project1].[IsDeleted] AS [IsDeleted], [Project1].[timestamp2] AS [timestamp2], [Project1].[TypeID] AS [TypeID], [Project1].[StartDate] AS [StartDate], [Project1].[IT360ID] AS [IT360ID], [Project1].[IsCompleted] AS [IsCompleted], [Project1].[PartialTag1] AS [PartialTag1], [Project1].[ITRackID3] AS [ITRackID3], [Project1].[ITServerID1] AS [ITServerID1], [Project1].[ID] AS [ID], [Project1].[Name] AS [Name], [Project1].[timestamp3] AS [timestamp3], [Project1].[TechnologyID3] AS [TechnologyID3], [Project1].[Tag1] AS [Tag1], [Project1].[IsDeleted1] AS [IsDeleted1], [Project1].[timestamp4] AS [timestamp4], [Project1].[TypeID1] AS [TypeID1], [Project1].[StartDate1] AS [StartDate1], [Project1].[IT360ID1] AS [IT360ID1], [Project1].[IsCompleted1] AS [IsCompleted1], [Project1].[PartialTag2] AS [PartialTag2], [Project1].[ITRackID4] AS [ITRackID4], row_number() OVER (ORDER BY [Project1].[PartialTag] ASC) AS [row_number]
                        FROM ( SELECT 
                            [Extent1].[ITServerID] AS [ITServerID], 
                            //code goe here
                            FROM       [dbo].[ITServers] AS [Extent1]
                            INNER JOIN  (SELECT [Extent2].[TechnologyID] AS [TechnologyID], [Extent2].[Tag] AS [Tag], [Extent3].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent2]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent3] ON [Extent2].[TechnologyID] = [Extent3].[ITRackID] ) AS [Join1] ON [Extent1].[ITServerID] = [Join1].[TechnologyID]
                            INNER JOIN  (SELECT [Extent4].[TechnologyID] AS [TechnologyID], [Extent4].[PartialTag] AS [PartialTag], [Extent5].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent4]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent5] ON [Extent4].[TechnologyID] = [Extent5].[ITRackID] ) AS [Join3] ON [Extent1].[ITServerID] = [Join3].[TechnologyID]
                            INNER JOIN [dbo].[ITRacks] AS [Extent6] ON [Extent1].[RackID] = [Extent6].[ITRackID]
                            LEFT OUTER JOIN  (SELECT [Extent7].[TechnologyID] AS [TechnologyID], [Extent7].[Tag] AS [Tag], [Extent7].[IsDeleted] AS [IsDeleted], [Extent7].[timestamp] AS [timestamp5], [Extent7].[TypeID] AS [TypeID], [Extent7].[StartDate] AS [StartDate], [Extent7].[IT360ID] AS [IT360ID], [Extent7].[IsCompleted] AS [IsCompleted], [Extent7].[PartialTag] AS [PartialTag], [Extent8].[ITRackID] AS [ITRackID], [Extent9].[ITServerID] AS [ITServerID]
                                FROM   [dbo].[Technology] AS [Extent7]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent8] ON [Extent7].[TechnologyID] = [Extent8].[ITRackID]
                                LEFT OUTER JOIN [dbo].[ITServers] AS [Extent9] ON [Extent7].[TechnologyID] = [Extent9].[ITServerID] ) AS [Join7] ON [Extent1].[RackID] = [Join7].[ITRackID]
                            INNER JOIN [dbo].[DataCenter] AS [Extent10] ON [Extent6].[DataCenterID] = [Extent10].[ID]
                            INNER JOIN  (SELECT [Extent11].[TechnologyID] AS [TechnologyID], [Extent11].[Tag] AS [Tag], [Extent11].[IsDeleted] AS [IsDeleted], [Extent11].[timestamp] AS [timestamp6], [Extent11].[TypeID] AS [TypeID], [Extent11].[StartDate] AS [StartDate], [Extent11].[IT360ID] AS [IT360ID], [Extent11].[IsCompleted] AS [IsCompleted], [Extent11].[PartialTag] AS [PartialTag], [Extent12].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent11]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent12] ON [Extent11].[TechnologyID] = [Extent12].[ITRackID] ) AS [Join10] ON [Extent1].[ITServerID] = [Join10].[TechnologyID]
                            WHERE (@p__linq__0 IS NULL) OR (( CAST(LEN(@p__linq__0) AS int)) = 0) OR (( CAST(CHARINDEX(UPPER(@p__linq__1), UPPER([Join1].[Tag])) AS int)) = 1)
                        )  AS [Project1]
                    )  AS [Project1]
                    WHERE [Project1].[row_number] > 225
                    ORDER BY [Project1].[PartialTag] ASC ) AS [Limit1]
                LEFT OUTER JOIN [dbo].[ITVirtualMachines] AS [Extent13] ON [Limit1].[ITServerID] = [Extent13].[ServerID]
            UNION ALL
                SELECT 
                2 AS [C1], 
                //code goes here
                FROM   (SELECT TOP (15) [Project3].[ITServerID] AS [ITServerID], [Project3].[ServerModelID] AS [ServerModelID], [Project3].[ILOIP] AS [ILOIP], [Project3].[RackID] AS [RackID], [Project3].[StatusID] AS [StatusID], [Project3].[BackUpStatusID] AS [BackUpStatusID], [Project3].[RoleID] AS [RoleID], [Project3].[OperatingSystemID] AS [OperatingSystemID], [Project3].[VirtualCenterID] AS [VirtualCenterID], [Project3].[Comment] AS [Comment], [Project3].[timestamp] AS [timestamp], [Project3].[IT360SiteID] AS [IT360SiteID], [Project3].[TechnologyID] AS [TechnologyID], [Project3].[ITRackID] AS [ITRackID], [Project3].[TechnologyID1] AS [TechnologyID1], [Project3].[PartialTag] AS [PartialTag], [Project3].[ITRackID1] AS [ITRackID1], [Project3].[ITRackID2] AS [ITRackID2], [Project3].[DataCenterID] AS [DataCenterID], [Project3].[ZoneID] AS [ZoneID], [Project3].[timestamp1] AS [timestamp1], [Project3].[IT360SiteID1] AS [IT360SiteID1], [Project3].[TechnologyID2] AS [TechnologyID2], [Project3].[Tag] AS [Tag], [Project3].[IsDeleted] AS [IsDeleted], [Project3].[timestamp2] AS [timestamp2], [Project3].[TypeID] AS [TypeID], [Project3].[StartDate] AS [StartDate], [Project3].[IT360ID] AS [IT360ID], [Project3].[IsCompleted] AS [IsCompleted], [Project3].[PartialTag1] AS [PartialTag1], [Project3].[ITRackID3] AS [ITRackID3], [Project3].[ITServerID1] AS [ITServerID1], [Project3].[ID] AS [ID], [Project3].[Name] AS [Name], [Project3].[timestamp3] AS [timestamp3], [Project3].[TechnologyID3] AS [TechnologyID3], [Project3].[Tag1] AS [Tag1], [Project3].[IsDeleted1] AS [IsDeleted1], [Project3].[timestamp4] AS [timestamp4], [Project3].[TypeID1] AS [TypeID1], [Project3].[StartDate1] AS [StartDate1], [Project3].[IT360ID1] AS [IT360ID1], [Project3].[IsCompleted1] AS [IsCompleted1], [Project3].[PartialTag2] AS [PartialTag2], [Project3].[ITRackID4] AS [ITRackID4]
                    FROM ( SELECT [Project3].[ITServerID] AS [ITServerID], [Project3].[ServerModelID] AS [ServerModelID], [Project3].[ILOIP] AS [ILOIP], [Project3].[RackID] AS [RackID], [Project3].[StatusID] AS [StatusID], [Project3].[BackUpStatusID] AS [BackUpStatusID], [Project3].[RoleID] AS [RoleID], [Project3].[OperatingSystemID] AS [OperatingSystemID], [Project3].[VirtualCenterID] AS [VirtualCenterID], [Project3].[Comment] AS [Comment], [Project3].[timestamp] AS [timestamp], [Project3].[IT360SiteID] AS [IT360SiteID], [Project3].[TechnologyID] AS [TechnologyID], [Project3].[ITRackID] AS [ITRackID], [Project3].[TechnologyID1] AS [TechnologyID1], [Project3].[PartialTag] AS [PartialTag], [Project3].[ITRackID1] AS [ITRackID1], [Project3].[ITRackID2] AS [ITRackID2], [Project3].[DataCenterID] AS [DataCenterID], [Project3].[ZoneID] AS [ZoneID], [Project3].[timestamp1] AS [timestamp1], [Project3].[IT360SiteID1] AS [IT360SiteID1], [Project3].[TechnologyID2] AS [TechnologyID2], [Project3].[Tag] AS [Tag], [Project3].[IsDeleted] AS [IsDeleted], [Project3].[timestamp2] AS [timestamp2], [Project3].[TypeID] AS [TypeID], [Project3].[StartDate] AS [StartDate], [Project3].[IT360ID] AS [IT360ID], [Project3].[IsCompleted] AS [IsCompleted], [Project3].[PartialTag1] AS [PartialTag1], [Project3].[ITRackID3] AS [ITRackID3], [Project3].[ITServerID1] AS [ITServerID1], [Project3].[ID] AS [ID], [Project3].[Name] AS [Name], [Project3].[timestamp3] AS [timestamp3], [Project3].[TechnologyID3] AS [TechnologyID3], [Project3].[Tag1] AS [Tag1], [Project3].[IsDeleted1] AS [IsDeleted1], [Project3].[timestamp4] AS [timestamp4], [Project3].[TypeID1] AS [TypeID1], [Project3].[StartDate1] AS [StartDate1], [Project3].[IT360ID1] AS [IT360ID1], [Project3].[IsCompleted1] AS [IsCompleted1], [Project3].[PartialTag2] AS [PartialTag2], [Project3].[ITRackID4] AS [ITRackID4], row_number() OVER (ORDER BY [Project3].[PartialTag] ASC) AS [row_number]
                        FROM ( SELECT 
                            //code goes here
                            INNER JOIN  (SELECT [Extent15].[TechnologyID] AS [TechnologyID], [Extent15].[Tag] AS [Tag], [Extent16].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent15]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent16] ON [Extent15].[TechnologyID] = [Extent16].[ITRackID] ) AS [Join13] ON [Extent14].[ITServerID] = [Join13].[TechnologyID]
                            INNER JOIN  (SELECT [Extent17].[TechnologyID] AS [TechnologyID], [Extent17].[PartialTag] AS [PartialTag], [Extent18].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent17]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent18] ON [Extent17].[TechnologyID] = [Extent18].[ITRackID] ) AS [Join15] ON [Extent14].[ITServerID] = [Join15].[TechnologyID]
                            INNER JOIN [dbo].[ITRacks] AS [Extent19] ON [Extent14].[RackID] = [Extent19].[ITRackID]
                            LEFT OUTER JOIN  (SELECT [Extent20].[TechnologyID] AS [TechnologyID], [Extent20].[Tag] AS [Tag], [Extent20].[IsDeleted] AS [IsDeleted], [Extent20].[timestamp] AS [timestamp7], [Extent20].[TypeID] AS [TypeID], [Extent20].[StartDate] AS [StartDate], [Extent20].[IT360ID] AS [IT360ID], [Extent20].[IsCompleted] AS [IsCompleted], [Extent20].[PartialTag] AS [PartialTag], [Extent21].[ITRackID] AS [ITRackID], [Extent22].[ITServerID] AS [ITServerID]
                                FROM   [dbo].[Technology] AS [Extent20]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent21] ON [Extent20].[TechnologyID] = [Extent21].[ITRackID]
                                LEFT OUTER JOIN [dbo].[ITServers] AS [Extent22] ON [Extent20].[TechnologyID] = [Extent22].[ITServerID] ) AS [Join19] ON [Extent14].[RackID] = [Join19].[ITRackID]
                            INNER JOIN [dbo].[DataCenter] AS [Extent23] ON [Extent19].[DataCenterID] = [Extent23].[ID]
                            INNER JOIN  (SELECT [Extent24].[TechnologyID] AS [TechnologyID], [Extent24].[Tag] AS [Tag], [Extent24].[IsDeleted] AS [IsDeleted], [Extent24].[timestamp] AS [timestamp8], [Extent24].[TypeID] AS [TypeID], [Extent24].[StartDate] AS [StartDate], [Extent24].[IT360ID] AS [IT360ID], [Extent24].[IsCompleted] AS [IsCompleted], [Extent24].[PartialTag] AS [PartialTag], [Extent25].[ITRackID] AS [ITRackID]
                                FROM  [dbo].[Technology] AS [Extent24]
                                LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent25] ON [Extent24].[TechnologyID] = [Extent25].[ITRackID] ) AS [Join22] ON [Extent14].[ITServerID] = [Join22].[TechnologyID]
                            WHERE (@p__linq__0 IS NULL) OR (( CAST(LEN(@p__linq__0) AS int)) = 0) OR (( CAST(CHARINDEX(UPPER(@p__linq__1), UPPER([Join13].[Tag])) AS int)) = 1)
                        )  AS [Project3]
                    )  AS [Project3]
                    WHERE [Project3].[row_number] > 225
                    ORDER BY [Project3].[PartialTag] ASC ) AS [Limit2]
                INNER JOIN [dbo].[ITServers] AS [Extent26] ON [Limit2].[ITServerID] = [Extent26].[VirtualCenterID]) AS [UnionAll1]
        UNION ALL
            SELECT 
            3 AS [C1], 
            //code goes here
            FROM   (SELECT TOP (15) [Project6].[ITServerID] AS [ITServerID], [Project6].[ServerModelID] AS [ServerModelID], [Project6].[ILOIP] AS [ILOIP], [Project6].[RackID] AS [RackID], [Project6].[StatusID] AS [StatusID], [Project6].[BackUpStatusID] AS [BackUpStatusID], [Project6].[RoleID] AS [RoleID], [Project6].[OperatingSystemID] AS [OperatingSystemID], [Project6].[VirtualCenterID] AS [VirtualCenterID], [Project6].[Comment] AS [Comment], [Project6].[timestamp] AS [timestamp], [Project6].[IT360SiteID] AS [IT360SiteID], [Project6].[TechnologyID] AS [TechnologyID], [Project6].[ITRackID] AS [ITRackID], [Project6].[TechnologyID1] AS [TechnologyID1], [Project6].[PartialTag] AS [PartialTag], [Project6].[ITRackID1] AS [ITRackID1], [Project6].[ITRackID2] AS [ITRackID2], [Project6].[DataCenterID] AS [DataCenterID], [Project6].[ZoneID] AS [ZoneID], [Project6].[timestamp1] AS [timestamp1], [Project6].[IT360SiteID1] AS [IT360SiteID1], [Project6].[TechnologyID2] AS [TechnologyID2], [Project6].[Tag] AS [Tag], [Project6].[IsDeleted] AS [IsDeleted], [Project6].[timestamp2] AS [timestamp2], [Project6].[TypeID] AS [TypeID], [Project6].[StartDate] AS [StartDate], [Project6].[IT360ID] AS [IT360ID], [Project6].[IsCompleted] AS [IsCompleted], [Project6].[PartialTag1] AS [PartialTag1], [Project6].[ITRackID3] AS [ITRackID3], [Project6].[ITServerID1] AS [ITServerID1], [Project6].[ID] AS [ID], [Project6].[Name] AS [Name], [Project6].[timestamp3] AS [timestamp3], [Project6].[TechnologyID3] AS [TechnologyID3], [Project6].[Tag1] AS [Tag1], [Project6].[IsDeleted1] AS [IsDeleted1], [Project6].[timestamp4] AS [timestamp4], [Project6].[TypeID1] AS [TypeID1], [Project6].[StartDate1] AS [StartDate1], [Project6].[IT360ID1] AS [IT360ID1], [Project6].[IsCompleted1] AS [IsCompleted1], [Project6].[PartialTag2] AS [PartialTag2], [Project6].[ITRackID4] AS [ITRackID4]
                FROM ( SELECT [Project6].[ITServerID] AS [ITServerID], [Project6].[ServerModelID] AS [ServerModelID], [Project6].[ILOIP] AS [ILOIP], [Project6].[RackID] AS [RackID], [Project6].[StatusID] AS [StatusID], [Project6].[BackUpStatusID] AS [BackUpStatusID], [Project6].[RoleID] AS [RoleID], [Project6].[OperatingSystemID] AS [OperatingSystemID], [Project6].[VirtualCenterID] AS [VirtualCenterID], [Project6].[Comment] AS [Comment], [Project6].[timestamp] AS [timestamp], [Project6].[IT360SiteID] AS [IT360SiteID], [Project6].[TechnologyID] AS [TechnologyID], [Project6].[ITRackID] AS [ITRackID], [Project6].[TechnologyID1] AS [TechnologyID1], [Project6].[PartialTag] AS [PartialTag], [Project6].[ITRackID1] AS [ITRackID1], [Project6].[ITRackID2] AS [ITRackID2], [Project6].[DataCenterID] AS [DataCenterID], [Project6].[ZoneID] AS [ZoneID], [Project6].[timestamp1] AS [timestamp1], [Project6].[IT360SiteID1] AS [IT360SiteID1], [Project6].[TechnologyID2] AS [TechnologyID2], [Project6].[Tag] AS [Tag], [Project6].[IsDeleted] AS [IsDeleted], [Project6].[timestamp2] AS [timestamp2], [Project6].[TypeID] AS [TypeID], [Project6].[StartDate] AS [StartDate], [Project6].[IT360ID] AS [IT360ID], [Project6].[IsCompleted] AS [IsCompleted], [Project6].[PartialTag1] AS [PartialTag1], [Project6].[ITRackID3] AS [ITRackID3], [Project6].[ITServerID1] AS [ITServerID1], [Project6].[ID] AS [ID], [Project6].[Name] AS [Name], [Project6].[timestamp3] AS [timestamp3], [Project6].[TechnologyID3] AS [TechnologyID3], [Project6].[Tag1] AS [Tag1], [Project6].[IsDeleted1] AS [IsDeleted1], [Project6].[timestamp4] AS [timestamp4], [Project6].[TypeID1] AS [TypeID1], [Project6].[StartDate1] AS [StartDate1], [Project6].[IT360ID1] AS [IT360ID1], [Project6].[IsCompleted1] AS [IsCompleted1], [Project6].[PartialTag2] AS [PartialTag2], [Project6].[ITRackID4] AS [ITRackID4], row_number() OVER (ORDER BY [Project6].[PartialTag] ASC) AS [row_number]
                    FROM ( SELECT 
                        //code goes here
                        INNER JOIN  (SELECT [Extent28].[TechnologyID] AS [TechnologyID], [Extent28].[Tag] AS [Tag], [Extent29].[ITRackID] AS [ITRackID]
                            FROM  [dbo].[Technology] AS [Extent28]
                            LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent29] ON [Extent28].[TechnologyID] = [Extent29].[ITRackID] ) AS [Join25] ON [Extent27].[ITServerID] = [Join25].[TechnologyID]
                        INNER JOIN  (SELECT [Extent30].[TechnologyID] AS [TechnologyID], [Extent30].[PartialTag] AS [PartialTag], [Extent31].[ITRackID] AS [ITRackID]
                            FROM  [dbo].[Technology] AS [Extent30]
                            LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent31] ON [Extent30].[TechnologyID] = [Extent31].[ITRackID] ) AS [Join27] ON [Extent27].[ITServerID] = [Join27].[TechnologyID]
                        INNER JOIN [dbo].[ITRacks] AS [Extent32] ON [Extent27].[RackID] = [Extent32].[ITRackID]
                        LEFT OUTER JOIN  (SELECT [Extent33].[TechnologyID] AS [TechnologyID], [Extent33].[Tag] AS [Tag], [Extent33].[IsDeleted] AS [IsDeleted], [Extent33].[timestamp] AS [timestamp9], [Extent33].[TypeID] AS [TypeID], [Extent33].[StartDate] AS [StartDate], [Extent33].[IT360ID] AS [IT360ID], [Extent33].[IsCompleted] AS [IsCompleted], [Extent33].[PartialTag] AS [PartialTag], [Extent34].[ITRackID] AS [ITRackID], [Extent35].[ITServerID] AS [ITServerID]
                            FROM   [dbo].[Technology] AS [Extent33]
                            LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent34] ON [Extent33].[TechnologyID] = [Extent34].[ITRackID]
                            LEFT OUTER JOIN [dbo].[ITServers] AS [Extent35] ON [Extent33].[TechnologyID] = [Extent35].[ITServerID] ) AS [Join31] ON [Extent27].[RackID] = [Join31].[ITRackID]
                        INNER JOIN [dbo].[DataCenter] AS [Extent36] ON [Extent32].[DataCenterID] = [Extent36].[ID]
                        INNER JOIN  (SELECT [Extent37].[TechnologyID] AS [TechnologyID], [Extent37].[Tag] AS [Tag], [Extent37].[IsDeleted] AS [IsDeleted], [Extent37].[timestamp] AS [timestamp10], [Extent37].[TypeID] AS [TypeID], [Extent37].[StartDate] AS [StartDate], [Extent37].[IT360ID] AS [IT360ID], [Extent37].[IsCompleted] AS [IsCompleted], [Extent37].[PartialTag] AS [PartialTag], [Extent38].[ITRackID] AS [ITRackID]
                            FROM  [dbo].[Technology] AS [Extent37]
                            LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent38] ON [Extent37].[TechnologyID] = [Extent38].[ITRackID] ) AS [Join34] ON [Extent27].[ITServerID] = [Join34].[TechnologyID]
                        WHERE (@p__linq__0 IS NULL) OR (( CAST(LEN(@p__linq__0) AS int)) = 0) OR (( CAST(CHARINDEX(UPPER(@p__linq__1), UPPER([Join25].[Tag])) AS int)) = 1)
                    )  AS [Project6]
                )  AS [Project6]
                WHERE [Project6].[row_number] > 225
                ORDER BY [Project6].[PartialTag] ASC ) AS [Limit3]

    //code goes here
    FROM   (SELECT TOP (15) [Project12].[ITServerID] AS [ITServerID], [Project12].[ServerModelID] AS [ServerModelID], [Project12].[ILOIP] AS [ILOIP], [Project12].[RackID] AS [RackID], [Project12].[StatusID] AS [StatusID], [Project12].[BackUpStatusID] AS [BackUpStatusID], [Project12].[RoleID] AS [RoleID], [Project12].[OperatingSystemID] AS [OperatingSystemID], [Project12].[VirtualCenterID] AS [VirtualCenterID], [Project12].[Comment] AS [Comment], [Project12].[timestamp] AS [timestamp], [Project12].[IT360SiteID] AS [IT360SiteID], [Project12].[TechnologyID] AS [TechnologyID], [Project12].[ITRackID] AS [ITRackID], [Project12].[TechnologyID1] AS [TechnologyID1], [Project12].[PartialTag] AS [PartialTag], [Project12].[ITRackID1] AS [ITRackID1], [Project12].[ITRackID2] AS [ITRackID2], [Project12].[DataCenterID] AS [DataCenterID], [Project12].[ZoneID] AS [ZoneID], [Project12].[timestamp1] AS [timestamp1], [Project12].[IT360SiteID1] AS [IT360SiteID1], [Project12].[TechnologyID2] AS [TechnologyID2], [Project12].[Tag] AS [Tag], [Project12].[IsDeleted] AS [IsDeleted], [Project12].[timestamp2] AS [timestamp2], [Project12].[TypeID] AS [TypeID], [Project12].[StartDate] AS [StartDate], [Project12].[IT360ID] AS [IT360ID], [Project12].[IsCompleted] AS [IsCompleted], [Project12].[PartialTag1] AS [PartialTag1], [Project12].[ITRackID3] AS [ITRackID3], [Project12].[ITServerID1] AS [ITServerID1], [Project12].[ID] AS [ID], [Project12].[Name] AS [Name], [Project12].[timestamp3] AS [timestamp3], [Project12].[TechnologyID3] AS [TechnologyID3], [Project12].[Tag1] AS [Tag1], [Project12].[IsDeleted1] AS [IsDeleted1], [Project12].[timestamp4] AS [timestamp4], [Project12].[TypeID1] AS [TypeID1], [Project12].[StartDate1] AS [StartDate1], [Project12].[IT360ID1] AS [IT360ID1], [Project12].[IsCompleted1] AS [IsCompleted1], [Project12].[PartialTag2] AS [PartialTag2], [Project12].[ITRackID4] AS [ITRackID4]
        FROM ( SELECT [Project12].[ITServerID] AS [ITServerID], [Project12].[ServerModelID] AS [ServerModelID], [Project12].[ILOIP] AS [ILOIP], [Project12].[RackID] AS [RackID], [Project12].[StatusID] AS [StatusID], [Project12].[BackUpStatusID] AS [BackUpStatusID], [Project12].[RoleID] AS [RoleID], [Project12].[OperatingSystemID] AS [OperatingSystemID], [Project12].[VirtualCenterID] AS [VirtualCenterID], [Project12].[Comment] AS [Comment], [Project12].[timestamp] AS [timestamp], [Project12].[IT360SiteID] AS [IT360SiteID], [Project12].[TechnologyID] AS [TechnologyID], [Project12].[ITRackID] AS [ITRackID], [Project12].[TechnologyID1] AS [TechnologyID1], [Project12].[PartialTag] AS [PartialTag], [Project12].[ITRackID1] AS [ITRackID1], [Project12].[ITRackID2] AS [ITRackID2], [Project12].[DataCenterID] AS [DataCenterID], [Project12].[ZoneID] AS [ZoneID], [Project12].[timestamp1] AS [timestamp1], [Project12].[IT360SiteID1] AS [IT360SiteID1], [Project12].[TechnologyID2] AS [TechnologyID2], [Project12].[Tag] AS [Tag], [Project12].[IsDeleted] AS [IsDeleted], [Project12].[timestamp2] AS [timestamp2], [Project12].[TypeID] AS [TypeID], [Project12].[StartDate] AS [StartDate], [Project12].[IT360ID] AS [IT360ID], [Project12].[IsCompleted] AS [IsCompleted], [Project12].[PartialTag1] AS [PartialTag1], [Project12].[ITRackID3] AS [ITRackID3], [Project12].[ITServerID1] AS [ITServerID1], [Project12].[ID] AS [ID], [Project12].[Name] AS [Name], [Project12].[timestamp3] AS [timestamp3], [Project12].[TechnologyID3] AS [TechnologyID3], [Project12].[Tag1] AS [Tag1], [Project12].[IsDeleted1] AS [IsDeleted1], [Project12].[timestamp4] AS [timestamp4], [Project12].[TypeID1] AS [TypeID1], [Project12].[StartDate1] AS [StartDate1], [Project12].[IT360ID1] AS [IT360ID1], [Project12].[IsCompleted1] AS [IsCompleted1], [Project12].[PartialTag2] AS [PartialTag2], [Project12].[ITRackID4] AS [ITRackID4], row_number() OVER (ORDER BY [Project12].[PartialTag] ASC) AS [row_number]
            FROM ( SELECT 
                //code goes here
                FROM       [dbo].[ITServers] AS [Extent53]
                INNER JOIN  (SELECT [Extent54].[TechnologyID] AS [TechnologyID], [Extent54].[Tag] AS [Tag], [Extent55].[ITRackID] AS [ITRackID]
                    FROM  [dbo].[Technology] AS [Extent54]
                    LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent55] ON [Extent54].[TechnologyID] = [Extent55].[ITRackID] ) AS [Join49] ON [Extent53].[ITServerID] = [Join49].[TechnologyID]
                INNER JOIN  (SELECT [Extent56].[TechnologyID] AS [TechnologyID], [Extent56].[PartialTag] AS [PartialTag], [Extent57].[ITRackID] AS [ITRackID]
                    FROM  [dbo].[Technology] AS [Extent56]
                    LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent57] ON [Extent56].[TechnologyID] = [Extent57].[ITRackID] ) AS [Join51] ON [Extent53].[ITServerID] = [Join51].[TechnologyID]
                INNER JOIN [dbo].[ITRacks] AS [Extent58] ON [Extent53].[RackID] = [Extent58].[ITRackID]
                LEFT OUTER JOIN  (SELECT [Extent59].[TechnologyID] AS [TechnologyID], [Extent59].[Tag] AS [Tag], [Extent59].[IsDeleted] AS [IsDeleted], [Extent59].[timestamp] AS [timestamp13], [Extent59].[TypeID] AS [TypeID], [Extent59].[StartDate] AS [StartDate], [Extent59].[IT360ID] AS [IT360ID], [Extent59].[IsCompleted] AS [IsCompleted], [Extent59].[PartialTag] AS [PartialTag], [Extent60].[ITRackID] AS [ITRackID], [Extent61].[ITServerID] AS [ITServerID]
                    FROM   [dbo].[Technology] AS [Extent59]
                    LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent60] ON [Extent59].[TechnologyID] = [Extent60].[ITRackID]
                    LEFT OUTER JOIN [dbo].[ITServers] AS [Extent61] ON [Extent59].[TechnologyID] = [Extent61].[ITServerID] ) AS [Join55] ON [Extent53].[RackID] = [Join55].[ITRackID]
                INNER JOIN [dbo].[DataCenter] AS [Extent62] ON [Extent58].[DataCenterID] = [Extent62].[ID]
                INNER JOIN  (SELECT [Extent63].[TechnologyID] AS [TechnologyID], [Extent63].[Tag] AS [Tag], [Extent63].[IsDeleted] AS [IsDeleted], [Extent63].[timestamp] AS [timestamp14], [Extent63].[TypeID] AS [TypeID], [Extent63].[StartDate] AS [StartDate], [Extent63].[IT360ID] AS [IT360ID], [Extent63].[IsCompleted] AS [IsCompleted], [Extent63].[PartialTag] AS [PartialTag], [Extent64].[ITRackID] AS [ITRackID]
                    FROM  [dbo].[Technology] AS [Extent63]
                    LEFT OUTER JOIN [dbo].[ITRacks] AS [Extent64] ON [Extent63].[TechnologyID] = [Extent64].[ITRackID] ) AS [Join58] ON [Extent53].[ITServerID] = [Join58].[TechnologyID]
                WHERE (@p__linq__0 IS NULL) OR (( CAST(LEN(@p__linq__0) AS int)) = 0) OR (( CAST(CHARINDEX(UPPER(@p__linq__1), UPPER([Join49].[Tag])) AS int)) = 1)
            )  AS [Project12]
        )  AS [Project12]
        WHERE [Project12].[row_number] > 225
        ORDER BY [Project12].[PartialTag] ASC ) AS [Limit5]
    INNER JOIN [dbo].[ITRouters] AS [Extent65] ON [Limit5].[ITServerID] = [Extent65].[ConsoleServerID]) AS [UnionAll4]
ORDER BY [UnionAll4].[C2] ASC, [UnionAll4].[C3] ASC, [UnionAll4].[C4] ASC, [UnionAll4].[C5] ASC, [UnionAll4].[C6] ASC, [UnionAll4].[C7] ASC, [UnionAll4].[C8] ASC, [UnionAll4].[C9] ASC, [UnionAll4].[C10] ASC, [UnionAll4].[C11] ASC, [UnionAll4].[C12] ASC, [UnionAll4].[C13] ASC, [UnionAll4].[C14] ASC, [UnionAll4].[C16] ASC, [UnionAll4].[C29] ASC, [UnionAll4].[C34] ASC, [UnionAll4].[C43] ASC, [UnionAll4].[C46] ASC, [UnionAll4].[C1] ASC',N'@p__linq__0 nvarchar(4000),@p__linq__1 nvarchar(4000)',@p__linq__0=N'',@p__linq__1=N''