我刚刚下载了LinqPad,以探索在我正在处理的应用程序中使用Linq查询的好处,但是当我在左侧列中查看我的数据库表时,LinqPad会显示我的所有表格,其末尾为's',实例CategoryTbl变为CategoryTbls但是当我在SQL管理工作室中查看我的数据库时,表名显示正确.
虽然任何表都应该有一个S,即客户端保持不变.
当我执行Linq查询时,我必须对CategoryTbls执行它,但必须对CategoryTbl执行SQL查询.
我只是想知道为什么会发生这种情况,这是一个错误还是一个功能?如果它是一个功能为什么?
谢谢
我在网上研究过,大多数结果都是从 sql 转换为 linq,很少有 linq 到 sql。
这是我想要转换为 SQL 的代码:
using (CommerceEntities db = new CommerceEntities())
{
try
{
var query = (from ProductOrders in db.OrderDetails
join SelectedProducts in db.Products on ProductOrders.ProductID
equals SelectedProducts.ProductID
group ProductOrders by new
{
ProductId = SelectedProducts.ProductID,
ModelName = SelectedProducts.ModelName
} into grp
select new
{
ModelName = grp.Key.ModelName,
ProductId = grp.Key.ProductId,
Quantity = grp.Sum(o => o.Quantity)
} into orderdgrp where orderdgrp.Quantity > 0
orderby orderdgrp.Quantity descending select orderdgrp).Take(5);
RepeaterItemsList.DataSource = query;
RepeaterItemsList.DataBind();
}
catch …Run Code Online (Sandbox Code Playgroud)