將表格從服務器資源管理器拖動到DataClasses.dbml後,Visual Studio將在DataClasses.designer.cs中自行生成代碼。生成的C#LINQ to SQL類
如果表中的一個「S」,如Books
名結束,VS將刪除的「在類名,並保留「S」與物業名稱:
public System.Data.Linq.Table<Book> Books
{
get
{
return this.GetTable<Book>();
}
}
如果表不帶「S」結尾,如Book
,VS將保留類名,並添加一個「S」屬性名稱:
public System.Data.Linq.Table<Book> Books
{
get
{
return this.GetTable<Book>();
}
}
不過,我的同事的VS只是不斷的名字:
Book: public System.Data.Linq.Table<Book> Book
Books: public System.Data.Linq.Table<Books> Books
我們用我們自己的電腦開展同一個項目。如果拖動一個新表DataClasses.dbml和保存,我的VS將改變他的老代碼:
public System.Data.Linq.Table<Book> Book
到
public System.Data.Linq.Table<Book> Books
和他所有的規定,如
DataClassesDataContext db = new DataClassesDataContext();
var book = db.Book;
會是錯誤的,因爲現在它必須是:
var book = db.Books;
我該如何解決這個問題?
看吧(及周邊):https://msdn.microsoft.com/en-us/library/ system.data.entity.modelconfiguration.conventions.pluralizingtablenameconvention(v = vs.113).aspx –
導出.vssettings並讓你的同事使用它們 –