随着迁移到EF6.1,我们的目标是使用独占性Async / Await选项与我们的数据集对话.从我们以前的
Linq2sql移植时,有很多.ToList(),.FirstOrDefault()和.Count().我知道我们可以搜索并修复所有这些,但如果我们能够在编译时阻止这些函数被允许进入构建,那将会很好.有没有人对如何实现这一点有创意?即使它们是可以抛出的编译器警告(例如使用Obsolete属性).
解决方法
您可以使用
.NET Compiler Platform编写
Diagnostic and Code Fix来查找这些模式并提供警告/错误.
您甚至可以实现语法转换来自动更改这些结构 – 尽管这些工作可能比仅仅手动执行更昂贵.