我正在使用linq-to-sql从我的数据库中获取数据。我想更改表的名称并更改2列的名称。我知道怎么做,但问题是我已经针对该表编写了几个查询,如果我更改数据库,查询也需要更改。
有没有办法在不重做查询和datacontext的情况下对数据库进行更改?
感谢。
答案 0 :(得分:2)
至少需要更新实体和数据库之间的映射(表名,列名)。您的所有查询仍然是相同的。
更新将来自Visual Studio ORM Designer(,如果您正在使用)
[OR]
使用Datacontext中的属性。
[Table(Name="UpdatedName")]
和[Column(Name="UpdatedName")]
答案 1 :(得分:0)
您也可以从Stored-Proc
拨打LinQ
。在Stored-Proc中写下查询以更改Schema
,最后从Proc
调用此LINQ
。
答案 2 :(得分:0)
如果它是只读查询,您还可以使用旧名称向数据库添加视图。
但是,如果只是几个查询,Visual Studio将很快向您展示在何处进行适当的更改(Linqs2sql毕竟是强类型的)。我建议您只需更改所有查询和datacontext,因为从长远来看,会更清楚发生了什么。