SqlMetal, база данных Sql Server 2008, таблица с HierachyID, файл dal cs создается иногда? - PullRequest
0 голосов
/ 13 апреля 2010

У меня есть 2 базы данных с 2 таблицами с полями HierachyID.Для одной базы данных я могу получить файл dal cs, для другой базы данных я не могу получить файл dal cs?

HBus - это база данных, для которой я могу получить dal cs, ...

SqlMetal /server:.\SQLSERVER2008 /database:HBus /code:HBusDC.cs /views /functions /sprocs /namespace:HBusDC /context:HBusDataContext

Это выводит меня из файла, ... который работает, но исключает поле HierarchyID для таблицы и включает в себя все остальные поля для этой таблицы.Это нормально, я не против.

Приведенная выше строка cmd выводит предупреждение, но по-прежнему создает файл, например

SqlMetal /server:.\SQLSERVER2008 /database:HBus /code:HBusDC.cs /views /functions /sprocs /namespace:HBusDC /context:HBusDataContext 
Microsoft (R) Database Mapping Generator 2008 version 1.00.30729
for Microsoft (R) .NET Framework version 3.5
Copyright (C) Microsoft Corporation. All rights reserved.

Warning : SQM1021: Unable to extract column 'OrgNode' of Table 'dbo.HMsg' from SqlServer because the column's DbType is a user-defined type (UDT). 
Warning : SQM1021: Unable to extract column 'OrgNode' of Table 'dbo.vwHMsg' from SqlServer because the column's DbType is a user-defined type (UDT). 

HMsg - это таблица с полем HierarchyID.

У меня есть другая база данныхЭльф, почти то же самое, но я получаю предупреждение и Ошибка при использовании sql metal, и я не получаю файл dal cs ...

SqlMetal /server:.\SQLSERVER2008/ database: Elf /code:ElfDataContextDal.cs / views / functions / sprocs / namespace: HBusDC / context: HBusDataContext

Ошибка, а также предупреждение и файл cs не отображаются на моем диске, ...: - (

SqlMetal /server:.\SQLSERVER2008 /database:Elf /code:ElfDataContextDal.cs /views /functions /sprocs /namespace:HBusDC /context:HBusDataContext 
Microsoft (R) Database Mapping Generator 2008 version 1.00.30729
for Microsoft (R) .NET Framework version 3.5
Copyright (C) Microsoft Corporation. All rights reserved.

Warning : SQM1021: Unable to extract column 'OrgNode' of Table 'dbo.EntityLink' from SqlServer because the column's DbType is a user-defined type (UDT). 
Error : Requested value 'ELF.SYS.HIERARCHYID' was not found.

Поля объявляются одинаково в Elf db

OrgNode [HierarchyID] null,

в HBus db ...

OrgNode [HierarchyID] null,

Обе базы данных находятся в одном и том же экземпляре SQL Server 2008, поэтому HierarchyID является встроенным типом, ни один из БД не имеет HierarchyID udt, ...

заранее приветствует любые ответы ...

1 Ответ

1 голос
/ 13 апреля 2010

На самом деле проблема была в sp, который возвращал иерархию, и sqlmetal это не нравится, ... решена.

...