2015-09-13 8 views
0

Я добавил две новые таблицы в базу данных. Я бросил их на поверхность дизайна. Я понимаю, что он должен просто автоматически генерировать код design.cs в результате. Это произошло, по моей неисправной памяти, когда я добавил новую таблицу на прошлой неделе, но не на этой неделе.Обновление кода с dbml

Я проверил ссылки в csproj, и все выглядит нормально.

Я попробовал RunCustomTool, но это, казалось, ничего не входило ни в DBML, ни в design.cs. Никакая комбинация удаления, сохранения и повторного добавления не имеет никакого эффекта.

Это используется MSLinqToSQLGenerator, а не SQLMetal. Похоже, что есть какой-то простой трюк, который мне не хватает.

ОБНОВЛЕНИЕ: Таким образом, проблема связана с конкретной таблицей. Если я добавлю эту таблицу, она будет генерироваться правильно.

CREATE TABLE [dbo].[_LeakageClass](
    [id] [int] NOT NULL, 
    [Class] [nvarchar](25) NOT NULL, 
    [Description] [nvarchar](50) NOT NULL 
CONSTRAINT [PK__LeakageClass] PRIMARY KEY CLUSTERED 
(
    [id] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] 

Если я добавлю эту таблицу, она перестанет работать, и ничто другое не сгенерирует код с этого момента.

CREATE TABLE [dbo].[_SeatSize](
    [model] [int] NOT NULL, 
    [ValveSize] [int] NOT NULL, 
    [SeatSize] [int] NOT NULL, 
    [Stroke] [int] NOT NULL 

CONSTRAINT [PK__SeatSize] PRIMARY KEY CLUSTERED 
(
    [model] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] 

ответ

0

Он не может обрабатывать поле, названное подобно таблице.
CREATE TABLE [dbo].[_SeatSize](

не работает.
CREATE TABLE [dbo].[_SeatSize](
[SeatSizer] [int] NOT NULL,
работает нормально. Обратите внимание, что префикс подчеркивания в таблице недостаточно, чтобы иметь значение.