C# C编写SQL查询
我正在尝试编写一个自定义查询并不断返回一个 SqlException未处理“错误”-靠近“”的语法不正确 代码: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
在串联中的每个字符串之前/之后添加空格
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();