我在MVC视图中的下拉列表中遇到问题。下拉列表中的选项元素来自表格,应按hierarchyId列排序。我已经创建了一个正确命令的视图,但是当我从视图中创建我的实体并将其用于下拉列表时,将忽略排序。
我发现L2S和EF不支持hierarchyId数据类型,所以这可能是问题 - 但是必须可以创建视图并使用视图中的顺序来正确填写下拉列表?
提前致谢, Steffen Jorgensen,丹麦
答案 0 :(得分:0)
好的 - 我发现了问题所在。事实证明,这是一个行为不正确的模型。相反,问题是SQL Server 2008不允许在视图中进行排序,除非你在顶部放置一个TOP子句。但如果您使用TOP 100 PERCENT,则订购将无效。如果我改为TOP 99 PERCENT它工作正常(除了我没有得到我需要的所有行)?!我没有非常大的数据集,因此我尝试将其更改为TOP 10000并且Voilá一切都按预期工作!
我在这里找到了解决方案: http://www.networkworld.com/community/node/34784
进一步深入研究该主题,结果证明该错误已被MS(http://support.microsoft.com/kb/926292/)所知并已得到修复。我最好踢我的DBA并更新我们的服务器: - )