c# - ServiceStack 选择投影未按预期工作

标签 c# asp.net linq servicestack

ServiceStack 选择投影未按预期工作

这里是例子

var q = db.From<Product>()
            .Select<Product>(p=>
                new
                {                     
                    Name = p.Name,
                    Price = p.Price,                     
                    ExtraVATColumn= 5*8
                }
               );
             return db.Select<object>(q);

返回

[{"Name":"Book","Price":1103.46,"40":40}]

代替

[{"Name":"Book","Price":1103.46,"ExtraVATColumn":40}]

在标准 ASP.NET Web Api 应用程序中,Linq Select 投影按预期工作,但在 ServiceStack Api 中不工作。

有人可以解释一下吗?

最佳答案

5*8 = 40

它使用 Product 属性名称,即 p.Name、p.Price 作为 JSON 结果中的键。对于 ExtraVATColumn,您的 Linq 中没有提供任何属性/变量。因此,值 40 在序列化时被用作键的名称。

关于c# - ServiceStack 选择投影未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47323021/

相关文章:

asp.net - gridview、分页和 "object reference not set"错误的问题

c# - 使用 sum 和 group by 将 Sql Query 转换为 linq

c# - 使用异步 InjectionFactory

c# - 在 C# 中为我的 List 包装器实现一个集合初始值设定项

c# - 如何在代码中访问 ASP.Net 向导完成按钮?

c# - LinQtoExcel 使用 asp 文件上传

c# - Linq 在创建选择之前进行检查

c# - 触发器激活后如何等待 5 秒?

asp.net - PayPal IPN 缺失字段

asp.net - ASP.NET MVC 中的 Url.Content 问题