我们的开发团队希望在我们的数据访问层中使用LINQ to SQL。我们遇到的一个问题是我们访问的SQL Server数据库有时可能在某些表中有其他列。这种变化是有限的,因此最多我们需要考虑5个额外的可选列。
我们意识到我们可以创建5个datacontexts,一个用于存在可选列的每种情况,以及一个使用正确列的开关。但这看起来有点沉重。
有没有人知道我们可以继续使用LINQ to SQL的方法,但具有一定的可扩展性,以便我们可以使用一个datacontext而不是5?
注意:我们无法控制数据库架构,因为它由第三方拥有。否则,我们总是在这些表中包含额外的列。
答案 0 :(得分:0)
我们的开发团队认为这与LINQ无法很好地协同工作。所以我们使用ADO.NET SqlCommands,编写自己的SQL,而不是让LINQ生成它。这使我们可以灵活地在存在额外列时更改SQL,同时保留单个数据层类而不是5个。