【问题标题】:Funky Sql Generated using SubSonic Simple Repository, LINQ and ASP.NET MVC使用 SubSonic Simple Repository、LINQ 和 ASP.NET MVC 生成的时髦 Sql
【发布时间】:2010-07-16 11:39:59
【问题描述】:

我有以下代码:

if (collection["Filter"] == "2") { 
   presentations = presentations.Where(x => x.Speaker.FirstName.StartsWith("B")).
   OrderBy(x => x.Speaker.FirstName);
}

这会生成以下 sql:

SELECT  [t0].[Description], [t0].[EventId], [t0].[Id], [t0].[PresentedOn], 
        [t0].[Slug], [t0].[SpeakerId], [t0].[Title], [t0].[Url]
FROM    [Presentations] AS t0
LEFT    OUTER JOIN [Speakers] AS t1 ON ([t1].[Id] = [t0].[Id])
WHERE   ([t1].[FirstName] LIKE 'B' + '%')
ORDER   BY [t1].[FirstName]

问题是连接应该是:

LEFT OUTER JOIN [Speakers] AS t1 ON ([t1].[Id] = [t0].[SpeakerId])

任何想法如何解决这个问题?链接到ASP.NET MVC2 Linq Where Clause using StartsWith

【问题讨论】:

    标签: c# linq asp.net-mvc-2 subsonic3 subsonic-simplerepository


    【解决方案1】:

    我不认为 SubSonic Linq 提供商非常“成熟”。

    【讨论】:

    • 感谢您的评论,但这不是很有帮助。这不是亚音速的第一个问题,不过我同意你的看法。
    • 不是答案。您是否打算将此作为对 OP 的评论?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多