C# C编写SQL查询

C# C编写SQL查询,c#,sql,C#,Sql,我正在尝试编写一个自定义查询并不断返回一个 SqlException未处理“错误”-靠近“”的语法不正确 代码: 在串联中的每个字符串之前/之后添加空格 var list = dbcontext.Database.SqlQuery<string>( "SELECT a.AssetID, a.AssetName, a.Seg1_Code, d.ShortName, e.OfficePercentage, e.MaintenancePercent

我正在尝试编写一个自定义查询并不断返回一个

SqlException未处理“错误”-靠近“”的语法不正确

代码:


在串联中的每个字符串之前/之后添加空格

 var list = dbcontext.Database.SqlQuery<string>(
                    "SELECT a.AssetID, a.AssetName, a.Seg1_Code, d.ShortName, e.OfficePercentage, e.MaintenancePercentage" +
                    " FROM [Core].[dbo].[Asset] a" +
                    " LEFT OUTER JOIN [Core].[dbo].[AssetAddress] b" +
                    " ON a.AssetID = b.AssetID" +
                    " LEFT OUTER JOIN [Core].[dbo].[Address] c" +
                    " ON b.AddressID = c.AddressID" +
                    " LEFT OUTER JOIN [Core].[dbo].[StateLookup] d" +
                    " ON c.StateID = d.StateID" +
                    " INNER JOIN [Core].[dbo].[AssetPayrollMarkupOverride] e" +
                    " ON a.AssetID = e.AssetID" +
                    " ORDER BY d.ShortName, a.AssetName").ToList();

在上面的代码中,我在新字符串开始之前添加了空格

为什么要这样做?使用LINQ…我不确定这是否算作使用实体框架。滥用或忽视,也许…@RonDeijkers他正在使用LINQ:ToListI最终按照Ron的建议走了LINQ路线。空格似乎起了作用,但现在我又犯了一个错误。”数据读取器有多个字段。多个字段对EDM基元或枚举类型无效。“@Mithrilhall,这是一个单独的错误,需要不同的上下文,如果您发布一个包含相关代码和详细信息的新问题,效果会更好。有关快速检查,请参阅
 var list = dbcontext.Database.SqlQuery<string>(
                    "SELECT a.AssetID, a.AssetName, a.Seg1_Code, d.ShortName, e.OfficePercentage, e.MaintenancePercentage" +
                    " FROM [Core].[dbo].[Asset] a" +
                    " LEFT OUTER JOIN [Core].[dbo].[AssetAddress] b" +
                    " ON a.AssetID = b.AssetID" +
                    " LEFT OUTER JOIN [Core].[dbo].[Address] c" +
                    " ON b.AddressID = c.AddressID" +
                    " LEFT OUTER JOIN [Core].[dbo].[StateLookup] d" +
                    " ON c.StateID = d.StateID" +
                    " INNER JOIN [Core].[dbo].[AssetPayrollMarkupOverride] e" +
                    " ON a.AssetID = e.AssetID" +
                    " ORDER BY d.ShortName, a.AssetName").ToList();