我有一个索引 View ,我需要为其指定 noexpand 提示以使其合理执行。不幸的是,关于从 NOLOCK 提示修改 Linq to SQL 生成的 T-SQL 查询,似乎没有简单的方法可以直接利用这些提示,还是有?
我的想法是允许通过使用属性或通过 dbml 声明性地自定义这些东西是有意义的。此外,由于 Linq to SQL 似乎只针对 SQL Server 工作,因此我们也能够利用这些高级功能(如果存在)才有意义。尽管我对解决此问题的任何创造性方法感兴趣,但无论实现如何。
最佳答案
我找到了一种解决方法,它似乎可行,但需要为每个想要使用 NOEXPAND 提示的 SQL View 创建第二个 View 。在第二个 View 中,只需从原始 View 中选择所有字段并添加 NOEXPAND 提示。任何需要使用 NOEXPAND 提示的 Linq to SQL 查询现在都可以只定位包装原始 View 的 View 。
更多详情请见 this MSDN post .
创建依赖 View 时要考虑的一个缺点是您必须确保以正确的依赖顺序应用创建脚本
有人有更好的选择吗?我宁愿不必创建额外的 SQL View 来支持这个必要的优化器提示的使用。
关于linq-to-sql - 如何在 Linq to SQL 中使用 NOEXPAND 提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3135669/